Სარჩევი:
- მარაგები
- ნაბიჯი 1: შესავალი MQTT– ში
- ნაბიჯი 2: IoT პლატფორმის გაცნობა
- ნაბიჯი 3: მოამზადეთ MQTT გამომცემელი
- ნაბიჯი 4: სქოლიო
- ნაბიჯი 5: კრედიტები და მხარდაჭერა
ვიდეო: IoT საფუძვლები: თქვენი IoT– ის ღრუბელთან დაკავშირება Mongoose OS– ის გამოყენებით: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
თუ თქვენ ხართ დაკავებული ელექტრონიკითა და ელექტრონიკით, უფრო ხშირად, ვიდრე არა, თქვენ შეხვდებით ტერმინს ნივთების ინტერნეტი, ჩვეულებრივ შემოკლებით IoT, და რომ ეს ეხება მოწყობილობების ერთობლიობას, რომელსაც შეუძლია ინტერნეტთან დაკავშირება! მე თვითონ ვიყავი ასეთი ადამიანი, მე მოვიხიბლე, როდესაც გავიგე, რომ ასეთი დიდი მოწყობილობები ჩემთვის ადვილად ხელმისაწვდომი იყო. მხოლოდ იმაზე ფიქრი, რომ შემეძლო ჩემი პროექტების ინტერნეტთან დაკავშირება აპარატურის მცირე ნაწილის გამოყენებით და მხოლოდ იმაზე ვფიქრობდი იმ მრავალრიცხოვან კარიბჭეზე, რომელიც ის ჩემი პროექტის იდეებისთვის გაიხსნებოდა, გამიძალებდა.
მაგრამ IoT– ს ინტერნეტით დაკავშირება არ არის ისეთი მარტივი, როგორც უბრალოდ თაროზე ყიდვა და მისი ჩართვა. გარდა იმისა, რომ მოწყობილობა ინტერნეტს დაუკავშირდება, ჩვენ ასევე გვჭირდება რამდენიმე სასარგებლო მონაცემის ინტერნეტში გადატანა. ეს ინსტრუქცია ეხება ზემოაღნიშნული მიზნის მისაღწევად ჩართულ პროცედურას და განკუთვნილია ნებისმიერი დონის გამოცდილების მკითხველებისთვის, დამწყებიდან დაწყებული ვეტერანებით დამწყები, რომლებიც ახალია IoT– ში.
ამ ინსტრუქციულად, როგორც მაგალითი, მე ვაჩვენებ, თუ როგორ უნდა დავხატოთ ESP32 განვითარების დაფის შიდა ტემპერატურის სენსორის კითხვის გრაფიკი, რამაც მკითხველს უნდა მისცეს პროცესის კარგი წარმოდგენა.
მიუხედავად იმისა, რომ ეს ინსტრუქცია იყენებს ESP32- ს და Mongoose OS- ს, მაინც ეს პროცედურა შეიძლება გავრცელდეს ყველა IoT- ზე და firmware- ზე!
მარაგები
იმისათვის, რომ შეძლოთ ამ ინსტრუქციის განხორციელება საკუთარ თავს, დაგჭირდებათ მხოლოდ მინიმალური ოდენობის აპარატურა, და ესენია:
- ნივთების ინტერნეტი (IoT): მე გამოვიყენე იაფი ESP32 განვითარების დაფის კლონი. თუ თქვენ აპირებთ შეიძინოთ ახალი ESP32 განვითარების დაფა, მაშინ უნდა ნახოთ DFRobot- ის ESP32 დაფა.
- მონაცემთა კაბელი: გამოიყენეთ კაბელი, რომელსაც თქვენი IoT მოითხოვს განათებისთვის და ა.
- ბატარეა (სურვილისამებრ): იყიდეთ ეს მხოლოდ იმ შემთხვევაში, თუ თქვენ აპირებთ თქვენი IoT- ის გაძლიერებას ხანგრძლივი პერიოდის განმავლობაში.
- მინი პურის დაფა (სურვილისამებრ)
მე მკითხველს ვთავაზობ გამოიყენოს ESP32– სგან განსხვავებული IoT, რათა მან მართლაც გაიგოს რა ხდება აქ, იმის ნაცვლად, რომ უბრალოდ მიბაძოს. დამიჯერეთ, თქვენ გსიამოვნებთ ამ პროცესის განხორციელება საკუთარი გონების გამოყენებით სხვა IoT– ში, მაგალითად, ESP8266 კარგი არჩევანი იქნება.
ნაბიჯი 1: შესავალი MQTT– ში
რა არის MQTT?
"MQTT არის მარტივი შეტყობინებების პროტოკოლი, რომელიც განკუთვნილია დაბალი გამტარუნარიანობის შეზღუდული მოწყობილობებისთვის. ასე რომ, ეს არის სრულყოფილი გადაწყვეტა ნივთების ინტერნეტში. MQTT გაძლევთ საშუალებას გაგზავნოთ ბრძანებები, რომ გააკონტროლოთ შედეგები, წაიკითხოთ და გამოაქვეყნოთ მონაცემები სენსორული კვანძებიდან და მრავალი სხვა. " (RandomNerdTutorials– დან)
როგორ მუშაობს MQTT?
ტექნიკურზე გადასვლამდე, მოდით ვიფიქროთ პირველ რიგში ჩვენს რეალურ სამყაროზე. დავუშვათ, რომ თქვენ დაინტერესებული ხართ თქვენი მეგობრის მეგობრის, ვთქვათ, ლორელის ბარათების კოლექციით, რომელსაც პირადად თქვენ არ იცნობთ. ვინაიდან თქვენ განსაკუთრებით გაინტერესებთ ბარათების კოლექცია, თქვენ სთხოვთ თქვენს მეგობარს, ვთქვათ ტომს, ჰკითხოს, ლავრელს სურს თუ არა მისი გაყიდვა. როდესაც ამას აკეთებთ, თქვენ სთხოვთ ტომს, იყიდოს ბარათების კოლექცია, თუ ლორელს სურს გაყიდოს, რადგან თქვენ არ გსურთ, რომ ვინმე სხვა ადამიანმა ხელში აიყვანოს ის კოლექცია, რომლისკენაც თქვენ მიისწრაფვით! რაც დრო გადის, ტომი და ლორელი ურთიერთობენ და ორმხრივი შეთანხმებით, ლორელი ტომს გადასცემს ბარათების კოლექციას ფულის სანაცვლოდ. ამ გაცვლის შემდეგ, ტომ ინახავს ბარათებს თავისთან, სანამ ის კვლავ არ შეგხვდებათ, როდესაც საბოლოოდ მოგცემთ ბარათების კოლექციას. ასე ხდება ნორმალური გაცვლა ჩვენს ყოველდღიურ ცხოვრებაში.
MQTT– ში გაცვლაში ჩართული ძირითადი ელემენტებია გამომცემელი (Laurel), აბონენტი (You) და ბროკერი (Tom). მისი მუშაობის ნაკადი ასევე მსგავსია ზემოაღნიშნული რეალური სამყაროს მაგალითისა, გარდა ერთი დიდი განსხვავებისა! MQTT– ში გაცვლა იწყება ბროკერის მიერ, ანუ ლორელი იქნება პირველი, ვინც მიაღწია ტომს და უთხრა, რომ მას სურს გაყიდოს თავისი ბარათების კოლექცია. თუ ჩვენ შევადარებთ MQTT– ს მუშაობას ჩვენს რეალურ მაგალითთან, მაშინ ეს იქნება შემდეგი:
- ლორელი ეუბნება ტომს, რომ მას სურს გაყიდოს თავისი ბარათების კოლექცია (მონაცემები ან დატვირთვა) და აძლევს ბარათებს მას.
- ტომ იღებს ამ ბარათებს მის ხელში და ღიაა ბარათების კოლექციის შეთავაზებებისათვის. როდესაც თქვენ და ტომ ხვდებით და ის აღმოაჩენს, რომ თქვენ დაინტერესებული ხართ ბარათებით (იწერთ თემას). შემდეგ ტომ გაძლევთ ბარათებს.
ვინაიდან მთელი პროცესი ბროკერზეა დამოკიდებული და არ არის პირდაპირი ურთიერთქმედება აბონენტსა და გამომცემელს შორის, MQTT ხსნის როგორც გამომცემლის, ასევე აბონენტის სინქრონიზაციის პრობლემებს. შუალედური ბროკერის არსებობა სიკეთეა რესურსებით შეზღუდული მოწყობილობებისთვის, როგორიცაა IoT და მიკროპროცესორები, რადგან მათი დამუშავების ძალა არასაკმარისია მონაცემების ნორმალური გზით გადასატანად, რაც გამოიწვევს დამატებით ხარჯებს, როგორიცაა ავტორიზაცია, დაშიფვრა და ა.შ. ამის გარდა, MQTT– ს აქვს მრავალი სხვა მახასიათებელი, როგორიცაა მსუბუქი, ერთზე მეტი განაწილება და ა.
ნაბიჯი 2: IoT პლატფორმის გაცნობა
რა არის IoT პლატფორმა?
მაღალ დონეზე, ნივთების ინტერნეტი (IoT) არის დამხმარე პროგრამული უზრუნველყოფა, რომელიც აკავშირებს უკიდურეს ტექნიკას, წვდომის წერტილებს და მონაცემთა ქსელებს ღირებულების ჯაჭვის სხვა ნაწილებთან (რომლებიც ზოგადად საბოლოო მომხმარებლის პროგრამებია). IoT პლატფორმები, როგორც წესი, გაუმკლავდეს მიმდინარე მენეჯმენტის ამოცანებს და მონაცემთა ვიზუალიზაციას, რაც მომხმარებლებს საშუალებას აძლევს მოახდინონ თავიანთი გარემოს ავტომატიზაცია.” (ლინკ-ლაბორატორიებიდან)
აბსტრაქტულად, IoT პლატფორმა მოქმედებს როგორც მომხმარებელი და მონაცემთა შეგროვების აგენტები, რომელიც პასუხისმგებელია შეგროვებული მონაცემების წარმოდგენაზე.
ამ ინსტრუქციაში, ჩვენ ვგეგმავთ ჩვენი ESP32- ის ტემპერატურის მაჩვენებლების ინტერნეტში გადაყვანას. ჩვენი ESP32 იმოქმედებს როგორც MQTT გამომცემელი და MQTT ბროკერი იქნება ჩვენი არჩევანის IoT პლატფორმა. გაითვალისწინეთ, რომ ჩვენს პროექტში არ არის MQTT აბონენტის როლი, რადგან მონაცემები უშუალოდ პლატფორმით არის წარმოდგენილი. IoT პლატფორმა პასუხისმგებელი იქნება ჩვენი გამოქვეყნებული მონაცემების შენახვაზე და ლამაზად წარმოდგენაზე, აქ, როგორც ხაზოვანი გრაფიკი. მე ვიყენებ Losant- ს, როგორც ჩემს IoT პლატფორმას, რადგან ის უფასოა და გთავაზობთ მონაცემების წარმოდგენის კარგ გზებს. IoT პლატფორმების ზოგიერთი სხვა მაგალითია Google Cloud, Amazon AWS და Adafruit, Microsoft Azure და ა.შ. მინდა მკითხველს ვურჩიო მიმართოს მათ მიერ არჩეული IoT პლატფორმის დოკუმენტაციას.
Losant- ის დაყენება:
- შედით Losant– ში
- შექმენით მოწყობილობა (დამოუკიდებელი ტიპი)
- დაამატეთ მონაცემთა რამდენიმე ტიპი მოწყობილობას 1. სახელი: ტემპერატურა, მონაცემთა ტიპი: ნომერი 2. სახელი: ოფსეტური, მონაცემთა ტიპი: ნომერი 3. სახელი: ერთეული, მონაცემთა ტიპი: სიმებიანი
- შექმენით წვდომის გასაღები და ჩაწერეთ მოწყობილობის ID და წვდომის გასაღები
- შექმენით გრაფიკი 1. შექმენით დაფა.2. დაამატეთ მას "დროის სერიის გრაფიკი" ბლოკი ტემპერატურის ცვლადისა და თქვენი შექმნილი მოწყობილობის გამოყენებით.
"მოწყობილობის ID" ემსახურება მოწყობილობის უნიკალური თითის ანაბეჭდის როლს. "წვდომის გასაღებები", როგორც სახელი გვთავაზობს, საშუალებას აძლევს IoT– ს გამოაქვეყნოს Losant– ი მოწყობილობის იდენტურობით.
ნაბიჯი 3: მოამზადეთ MQTT გამომცემელი
ახლა, როდესაც ჩვენ მოვამზადეთ IoT პლატფორმა მონაცემების მისაღებად და წარმოსადგენად, ჩვენ უნდა მოვამზადოთ MQTT გამომცემელი, რომელიც პასუხისმგებელი იქნება მონაცემების შეგროვებასა და გაგზავნაზე პლატფორმაზე.
MQTT გამომცემლის მომზადების მონახაზი ასეთია:
- დაწერეთ კოდი: ასწავლეთ გამომცემელს (IoT) მონაცემების შეგროვება, დამუშავება და გაგზავნა IoT პლატფორმაზე. ინსტრუქციები დაწერილია ადამიანის მიერ წაკითხული მაღალი დონის პროგრამირების ენებზე, რომელსაც ჩვეულებრივ უწოდებენ კოდს.
- დააინსტალირეთ პროგრამული უზრუნველყოფა: IoT ადვილად ვერ გაიგებს ამ ინსტრუქციებს, რადგან თავდაპირველად არ იცის რაიმე ენა. ადამიანთა და მანქანებს შორის ამ ენის ბარიერის დასაკავშირებლად, კოდი შედგენილია ინსტრუქციის უხეში ნაკრების სახით, ძირითადად ჰექსადეციალური ან ორობითი მნიშვნელობების კომპლექტი, რომელიც სპეციფიკურია IoT– ის შიგნით მეხსიერების ადგილმდებარეობისათვის, რომელიც ცნობილია როგორც firmware, რომელიც შემდეგ იშლება IoT– ში.
ამ ინსტრუქციაში, ვინაიდან მე ვიყენებ ჩემს მოსახერხებელ ESP32– ს, მე გავანათებ მას Mongoose OS– ის პროგრამულ უზრუნველყოფას, რომელიც იღებს C და JavaScript პროგრამებს. JS თავსებადობის გარდა, Mongoose OS– ს ჯერ კიდევ ბევრი რამის შეთავაზება შეუძლია, როგორიცაა საჰაერო განახლებები, თქვენი პროგრამის ონლაინ შესწორების მიზნით და მოწყობილობებისათვის გამოყოფილი დაფა (mDash) და ა.
მე შევიმუშავე ღია პროგრამული უზრუნველყოფა Mongoose OS– ისთვის ამ ინსტრუქციისთვის. ეს არის მარტივი აპლიკაცია სახელწოდებით losant-temp-sensor, რომელიც იყენებს MQTT- ს, რათა გააგზავნოს გარემოს ტემპერატურის სავარაუდო მაჩვენებლები, ESP32- ის შიდა ტემპერატურის მაჩვენებლების საფუძველზე, Losant– ში (უფასო IoT პლატფორმა). მიზანშეწონილია გაიაროთ პროგრამის კოდი უკეთ გასაგებად. ჩვენ გავანათებთ ამ აპს ამ ინსტრუქციისთვის.
თუ თქვენ ხართ ავანტიურისტი, შეგიძლიათ სცადოთ იგივე მიზნის მიღწევა Arduino-ESP32 firmware– ით, რაც საშუალებას გაძლევთ გამოიყენოთ ESP32 როგორც Arduino (WiFi შესაძლებლობებით).
სწრაფი მიმოხილვა, რომელიც ანათებს აპლიკაციას Mongoose OS– ით:
- დააინსტალირეთ mos ინსტრუმენტი თქვენი ოპერაციული სისტემისთვის.
-
გახსენით ინსტრუმენტი და შეასრულეთ შემდეგი ბრძანებები:
- mos clone
- cd losant-temp-sensor
- mos build -პლატფორმა esp32
- mos flash
- mos wifi "შენი wifi ssid" "შენი wifi პაროლი" მაგ. mos wifi "მთავარი" "მთავარი@123"
-
mos config-set temperature.basis =
ტემპერატურა. ერთეული ="
"მაგ. mos config-set temperature.basis = 33 / temperature.unit =" ცელსიუსი"
-
mos config-set device.id =
mqtt.client_id = mqtt.user = mqtt.pass =
წარმატებული ციმციმის შემდეგ, მიეცით საშუალება მოწყობილობას გადატვირთოს და შემდეგ შეასრულოს შემდეგი ბრძანებები:
ყველა ამ ნაბიჯის სწორად დასრულების შემდეგ, თქვენ მიიღებთ ESP32– ს, რომელიც აგზავნის ტემპერატურის მაჩვენებლებს Losant– ში პერიოდულად, ყოველ 10 წუთში. წარმატებულ გამოქვეყნებაზე მითითებულია ლურჯი LED, როგორც ეს ნაჩვენებია ზემოთ ვიდეოში.
ნაბიჯი 4: სქოლიო
თუ თქვენ შეძლებთ წინა ნაბიჯების სწორად გამეორებას, მაშინ ახლა გექნებათ სამუშაო პროექტი, რომლის დახმარებითაც შეგიძლიათ დააკვირდეთ ტემპერატურის ტენდენციებს თქვენს ოთახში, ან სადაც არ უნდა გეგმავთ პროექტის განთავსებას. ვინაიდან მე შევინახე ეს ინსტრუქცია რაც შეიძლება ზოგადი, ასე რომ თქვენ შეგიძლიათ გამოიყენოთ თქვენი IoT ყველა სახის მონაცემების შესაგროვებლად და სცადოთ მისგან რაიმე სასარგებლო დასკვნის გაკეთება, ან შეგიძლიათ ამის გაკეთება მხოლოდ იმისთვის, სწორად გავიგე ეს ინსტრუქცია.
ჩემთვის, IoT– ის საუკეთესო ნაწილი არის ის ფაქტი, რომ ის გვაძლევს საშუალებას შევაგროვოთ მონაცემთა უზარმაზარი ნაწილაკები, რომლებიც მარტო არ არის მიღებული და გადავაქციოთ რაიმე დასკვნის სახით. ეს ნამდვილად აზიანებს მეცნიერების სულს. ჩემთვის, ძალიან დამაკმაყოფილებელი და გამამხნევებელი იყო შევამჩნიე ჩემი ოთახის შიგნით ტემპერატურის დაცემა წვიმის საათებში ჩემი გრაფის საშუალებით.
Losant-temp-sensor-app ოპტიმიზირებულია ენერგიის მოხმარებისთვის, რადგან ის იყენებს ESP32– ის ღრმა ძილის ფუნქციას, ასე რომ თქვენ შეგიძლიათ გამოიყენოთ იგი დიდი ხნის განმავლობაში, ბატარეაზე საერთოდ არ ინერვიულოთ. თქვენ შეგიძლიათ კიდევ გაზარდოთ ენერგიის ეფექტურობა განვითარების დაფაზე LED- ის მოხსნით. მთელი კონფიგურაციის მიმდინარე ნახაზი ნაჩვენებია ზემოთ.
ამ ინსტრუქციის მიზანი, თავიდანვე იყო მხოლოდ გაცნობა IoT სამყაროში. ამ ინსტრუქციის დასრულებისთანავე თქვენ კარგად გაითავისებთ იმ საფუძვლებს, რომელთა გაძლიერება კიდევ უფრო შეგიძლიათ სხვა ონლაინ რესურსების საშუალებით.
მიუხედავად იმისა, რომ ამ ეტაპზე თქვენ ვერ შეძლებთ რთული პროექტების განხორციელებას, მაინც ყოველთვის უნდა გახსოვდეთ, რომ თუ თქვენ გაქვთ საკმარისად ძლიერი აგური და მათი ერთმანეთთან შერწყმის საშუალება, მაშინ შეგიძლია ნებისმიერი წარმოსახვის სტრუქტურა, მარტივიდან კომპლექსისკენ. ანალოგიურად, საფუძვლების კარგად გაცნობიერება და მათი სწორად გამოყენების ცოდნა მოგცემთ უამრავ წინააღმდეგობას. ამიტომ მიეცით თავი უკან პირველი ნაბიჯის გადადგმისთვის.
ნაბიჯი 5: კრედიტები და მხარდაჭერა
ეს ინსტრუქცია შედგება ილუსტრაციებისაგან, მაგ. ის, რომელიც განმარტავს MQTT გაცვლას, რომელიც მე პირადად გავაკეთე. ეს ილუსტრაციები შესაძლებელი გახდა მხოლოდ შემდეგი თავისუფალი SVG პაკეტების წყალობით:
- ინფოგრაფიკული ვექტორი შექმნილია freepik– ის მიერ - www.freepik.com
- ინფროგრაფიული ვექტორი შექმნილია starline– ის მიერ - www.freepik.com
- ხალხის ვექტორი შექმნილია pikisuperstar– ის მიერ - www.freepik.com
- მაკროვექტორის მიერ შექმნილი აბსტრაქტული ვექტორი - www.freepik.com
- მაკროვექტორის მიერ შექმნილი აბსტრაქტული ვექტორი - www.freepik.com
- ინფოგრაფიკული ვექტორი შექმნილია pikisuperstar– ის მიერ - www.freepik.com
ეს ინსტრუქცია დაფინანსებულია DFRobot– ის მიერ. DFRobot– ს აქვს ელექტრონიკის გასაოცარი კოლექცია, ასე რომ დარწმუნდით, რომ შეამოწმეთ იგი.
თუ ფიქრობთ, რომ მოგეწონათ ეს ინსტრუქცია და გინდათ მეტი მსგავსი ინსტრუქცია, მაშინ შეგიძლიათ მხარი დამიჭიროთ პატრეონში. თუ ასე შორს ვერ წახვალ, მაშინ შეგიძლია გამომყვე აქ ინსტრუქციებზე.
გირჩევთ:
როგორ დააკავშიროთ ჟოლო Pi ღრუბელთან Node.js გამოყენებით: 7 ნაბიჯი
როგორ დააკავშიროთ Raspberry Pi ღრუბელს Node.js გამოყენებით: ეს გაკვეთილი სასარგებლოა მათთვის, ვინც ეძებს Raspberry Pi– ს ღრუბელთან დაკავშირებას, განსაკუთრებით AskSensors IoT პლატფორმას, Node.js. არ გაქვთ Raspberry Pi? თუ თქვენ ამჟამად არ გყავთ Raspberry Pi, მე გირჩევთ, რომ მიიღოთ ჟოლო
Arduino WiFi- ს ღრუბელთან დაკავშირება ESP8266 გამოყენებით: 7 ნაბიჯი
Arduino WiFi– ს ღრუბელთან დაკავშირება ESP8266– ის გამოყენებით: ამ სამეურვეოში ჩვენ აგიხსნით, თუ როგორ უნდა დაუკავშიროთ თქვენი Arduino IoT ღრუბელს WiFi– ს საშუალებით. ჩვენ დავაკონფიგურირებთ Arduino– ს და ESP8266 WiFi მოდულისგან შემდგარ კონფიგურაციას, როგორც IoT Thing და მოვამზადებთ მას AskSensors ღრუბელთან კომუნიკაციისთვის. L
თქვენი Raspberry Pi ინტერნეტით დაკავშირება: 9 ნაბიჯი
თქვენი Raspberry Pi ინტერნეტით დაკავშირება: ამ გაკვეთილზე თქვენ ისწავლით თუ როგორ უნდა შექმნათ ვებ გვერდი, შეაგროვოთ მონაცემები მსოფლიო ქსელის გამოყენებით და გამოიყენოთ API– ები სურათების განთავსებისათვის Tumblr და Twitter– ში
შეაერთეთ თქვენი მცენარე ღრუბელთან: 10 ნაბიჯი
შეაერთეთ თქვენი მცენარე ღრუბელთან: ჩვენს ოფისში არის კაქტუსი, რომელსაც არ მოუქცევია ყურადღება. ვინაიდან მე ვმუშაობ IT კომპანიაში და მინდოდა ექსპერიმენტი ჩაეტარებინა LoRa– ზე, უსადენო გადაწყვეტილებებზე და AWS– ზე, მე დავარქვი ჩვენს კაქტუს სტივს და დავუკავშირე იგი ღრუბელს. ახლა თქვენ შეგიძლიათ დააკვირდეთ
DHT11/DHT22 სენსორის ღრუბელთან დაკავშირება ESP8266 დაფუძნებული დაფით: 9 ნაბიჯი
DHT11/DHT22 სენსორის ღრუბელთან დაკავშირება ESP8266 დაფუძნებული დაფით: წინა სტატიაში მე დავაკავშირე ჩემი ESP8266 დაფუძნებული NodeMCU დაფა Cloud4RPi სერვისთან. ახლა, დროა რეალური პროექტისთვის