Სარჩევი:

უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით: 8 ნაბიჯი
უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით: 8 ნაბიჯი

ვიდეო: უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით: 8 ნაბიჯი

ვიდეო: უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით: 8 ნაბიჯი
ვიდეო: How to control Servo motor with Arduino with and without potentiometer 2024, ნოემბერი
Anonim
უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით
უწყვეტი ბრუნვის სერვო (CRS) ძრავა ტელეგრამის კონტროლით

ამ გაკვეთილზე მე გასწავლით თუ როგორ უნდა აკონტროლოთ CRS ტელეგრამის საშუალებით. ამ ინსტრუქციისთვის დაგჭირდებათ რამდენიმე რამ. მე ვიმუშავებ NodeMCU 1.0 (ESP-12E მოდული). მას შეუძლია იმუშაოს არდუინოს სხვა საზღვრებზე, თქვენ უბრალოდ უნდა იპოვოთ შესაბამისი დისკები.

შემდეგი იყო ESP-12E მოდულის დაყენების გარემო:

  • Windows 10
  • Arduino IE 1.8.7 (Windows Store 1.8.15.0)

ESP-12E მოდულის დრაივერების და ძირითადი ფაილების დაყენების გზამკვლევი შეგიძლიათ იხილოთ აქ:

მას შემდეგ რაც ეს გააკეთე. ჩვენ მზად ვართ წავიდეთ!

ნაბიჯი 1: ნაბიჯი 1: კომპონენტები

ნაბიჯი 1: კომპონენტები
ნაბიჯი 1: კომპონენტები

ამ გაკვეთილისთვის დაგჭირდებათ რამდენიმე კომპონენტი:

  • ESP12-E მოდული (ESP8266)
  • უწყვეტი ბრუნვის სერვო ძრავა (ეს არის ის, რაც მე გამოვიყენე)
  • მიკრო USB კაბელი
  • Wifi ქსელი
  • Telegram აპლიკაცია
  • ბოტფერის ბოტი (არ ინერვიულო, ჩვენ იქ მივალთ)

ნაბიჯი 2: ნაბიჯი 2: შეაერთეთ სერვო ძრავა

ნაბიჯი 2: შეაერთეთ სერვო ძრავა
ნაბიჯი 2: შეაერთეთ სერვო ძრავა

მიჰყევით ამ სქემას სერვო ძრავის დასაკავშირებლად.

  • შავი: GND (სახმელეთო)
  • წითელი: 3.3V ან 5V (სიმძლავრე)
  • ყვითელი ან თეთრი: ციფრული გამომავალი (სიგნალი)

ასე რომ, თუ თქვენ იყენებთ იმავე სერვო ძრავას, რომელსაც მე ვიყენებდი და გაქვთ არდუინოს დაფა უფრო მაღალი ძაბვის (5V მაქსიმუმი) გამომავალით, შეგიძლიათ იქ შეაერთოთ დენის კაბელი. ეს მხოლოდ იმას ნიშნავს, რომ სერვო ძრავა გამოიმუშავებს უფრო მეტ ბრუნვას. ნებისმიერ შემთხვევაში, 3.3V ან 5V ორივე კარგია.

ნაბიჯი 3: ნაბიჯი 3: მცირე გაგება

სანამ დავიწყებთ კოდის ტესტირებას და ვნახავთ მუშაობს თუ არა, არის რაღაც, რაც უნდა გაიგოთ ამ სერვო ძრავის შესახებ. ვინაიდან ეს არ არის ჩვეულებრივი სერვო ძრავა, რომელიც გადადის კონკრეტულ კუთხეებზე, კოდი, რომლის გამოყენებაც გჭირდებათ, ცოტა განსხვავებულია.

მე არ გირჩევთ სერვოს გამოყენებას სრული ბრუნვის დროს, რადგან ის ქმნის უამრავ სითბოს და შესაძლოა მოიხმაროს ბევრი სიცოცხლე, რაც პროდუქტს აქვს. სცადეთ დარჩეთ [60, 120] ფართობზე.

ბათილი მარყუჟი {

myservo.write (90); // ეს ნიშნავს მოძრაობას, სერვო ძრავა დგას გაჭიანურებით (1000); myservo.write (0); // ეს ნიშნავს სრული სიჩქარით მოძრაობის საწინააღმდეგო მიმართულებით მოძრაობის შეფერხებას (1000); myservo.write (180); // ეს ნიშნავს საათის ისრის სრული სიჩქარით მოძრაობის შეფერხებას (1000); }

ნაბიჯი 4: ნაბიჯი 4: დაამატეთ კოდი სერვო ძრავის შესამოწმებლად

#ჩართეთ

სერვო მისერვო; void setup () {myservo.attach (D5); // მიამაგრეთ servo pin D5)} void loop () {myservo.write (85); // ბრუნავს ძრავას საწინააღმდეგო ისრის ისრის მიმართულებით ნელი სიჩქარის დაყოვნებით (1000); myservo.write (120); დაგვიანება (1000); myservo.write (90); დაგვიანება (5000); }

ნაბიჯი 5: ნაბიჯი 5: კომუნიკაციისთვის მომზადება

იმისათვის, რომ შეძლოთ თქვენთან Arduino– სთან დაკავშირება, თქვენ უნდა შეასწოროთ რამდენიმე რამ. ისინი საკმაოდ ადვილია. ჩვენ ამ ამოცანებს გავყოფთ ორ მცირე ნაწილად.

ბოტი

  1. დააინსტალირეთ Telegram თქვენს მობილურ ტელეფონში.
  2. შექმენით ანგარიში Telegram– ზე.
  3. მოძებნეთ მომხმარებელი 'Botfather'.
  4. შექმენით ახალი ბოტი მის მიერ ნაჩვენები ბრძანებების გამოყენებით (შეინახეთ გასაღები, რომელსაც ის გაძლევთ).

არდუინოს ამოცანები

  1. გახსენით Arduino IE.
  2. გადადით "ბიბლიოთეკის მენეჯერზე".
  3. დაამატეთ ბიბლიოთეკა "Universal Telegrambot".
  4. დაამატეთ ბიბლიოთეკა "ArduinoJson".

    • არ დაამატოთ ბეტა
    • დაამატეთ უახლესი 5.x აშენება.

ნაბიჯი 6: ნაბიჯი 6: კომუნიკაციის ტესტირება

ნაბიჯი 6: კომუნიკაციის ტესტირება
ნაბიჯი 6: კომუნიკაციის ტესტირება

ჩვენ თითქმის იქ ვართ.

  1. გახსენით 'echobot' უნივერსალური telelegrambot> esp8266 ბიბლიოთეკიდან.
  2. შეცვალეთ wifi სერთიფიკატები, რათა შეესაბამებოდეს თქვენს ქსელს იმ ადგილას, სადაც ხართ.
  3. შეცვალეთ ბოტკონი, რომელიც ბოტპერმა მოგცათ.
  4. დაამატეთ კოდის ეს ხაზი for მარყუჟში, რომელიც არის `void loop ();`

Serial.println (bot.messages .text);

ახლა ჩვენ მზად ვართ შესამოწმებლად.

ატვირთეთ ეს კოდი თქვენს არდუინოში. შეამოწმეთ სერიული მონიტორი, ხართ თუ არა NodeMCU თქვენს wifi ქსელთან დაკავშირებული. მას შემდეგ რაც დაინახავთ რომ ის დაკავშირებულია, გაუგზავნეთ შეტყობინება თქვენს ბოტს. ზუსტად იგივე შეტყობინება უნდა გამოგიგზავნოთ უკან.

ნაბიჯი 7: ნაბიჯი 7: ბრძანებების დამატება

ასე რომ, იმუშავა! ჩვენ მივიღეთ კავშირი მოწყობილობებს შორის. შემდეგი ნაბიჯი არის ნივთების შეჯამება. ასე რომ, ჩვენ ვაპირებთ დავამატოთ ბრძანებები არსებულ echobot კოდს. შეიძლება კარგი იდეა იყოს შემდეგი კოდის ნაცვლად ბოლო კოდის, რომელიც მე მოგეცით. ასე რომ, ჩვენ ხელს გვიშლის, რომ გვყავდეს ბოტი, რომელიც თუთიყუშივით იქცევა.

კოდის შემდეგი ნაწილი უნდა იყოს for მარყუჟში, რომელიც ახორციელებს ახალ შეტყობინებებს. იმის გათვალისწინებით, თუ როგორ განათავსებთ სერვო ძრავას, შეგიძლიათ შეცვალოთ ბრძანებები "გახსნა" და "დახურვა". ატვირთეთ ეს თქვენს esp8266 და შეამოწმეთ მუშაობს თუ არა.

// თქვენთვის სასურველი ბრძანება

if (bot.messages .text == "Open") {

// პასუხი თქვენი ბოტი მოგცემთ bot.sendMessage (bot.messages .chat_id, "მე ვხსნი ფარდებს თქვენთვის.");

// რას გააკეთებს არდუინოს დაფა

myservo.write (80); // სერვო ძრავა ბრუნავს საათის ისრის საწინააღმდეგოდ, ფარდების გასახსნელად

}

if (bot.messages .text == "Stop") {// პასუხი, რომელსაც თქვენი ბოტი მოგცემთ bot.sendMessage (bot.messages .chat_id, "ფარდების შეწყვეტა."); // რასაც არდუინოს დაფა გააკეთებს myservo.write (90); // სერვო ძრავა აჩერებს ბრუნვას}

if (bot.messages .text == "დახურვა") {// პასუხი თქვენი ბოტი მოგცემთ bot.sendMessage (bot.messages .chat_id, "მე ვხურავ ფარდებს თქვენთვის."); // რასაც არდუინოს დაფა გააკეთებს myservo.write (80); // სერვო ძრავა საათის ისრის მიმართულებით ბრუნავს ფარდების დასაკეტად}

ნაბიჯი 8: ნაბიჯი 8: შეაერთეთ მოწყობილობა თქვენს ფარდებთან (არ არის აუცილებელი)

ნაბიჯი 8: შეაერთეთ მოწყობილობა თქვენს ფარდებთან (არ არის აუცილებელი)
ნაბიჯი 8: შეაერთეთ მოწყობილობა თქვენს ფარდებთან (არ არის აუცილებელი)

ეეეეეეეეეეეეეეე!

ინსტრუქცია იყო თუ როგორ უნდა დაუკავშიროთ Telegrambot თქვენს Arduino– ს, ასე რომ თქვენ შეძლებთ მისი შორიდან გაკონტროლებას. მაგრამ მე გავაკეთე ეს სპეციალური განლაგება, რათა მე მქონოდა ფარდების გახსნა ჩემს სტუდიაში, ფიზიკურად მათი გახსნის გარეშე. ასე რომ, თუ თქვენც გინდათ იგივე გააკეთოთ, როგორც მე, ბოლო ნაბიჯი არის ჩვენი პატარა მოწყობილობის დაკავშირება თქვენს ფარდებთან და ვოილასთან.

გირჩევთ: