Სარჩევი:
- ნაბიჯი 1: გამოყენებული მასალები
- ნაბიჯი 2: მოწყობილობის შეკრება და გამოყენება
- ნაბიჯი 3: პითონის სკრიპტი
ვიდეო: ხმით კონტროლირებადი ხტუნვის ჯეკი- Google Voice AIY ვერსია: 3 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ასე რომ, თქვენ მიიღეთ საშობაოდ AIY ხმის ნაკრები და თამაშობთ მასთან ერთად, ინსტრუქციის შესაბამისად. სასაცილოა, მაგრამ ახლა?
ქვემოთ აღწერილი პროექტი წარმოადგენს მარტივ მოწყობილობას, რომლის აშენებაც შესაძლებელია Raspberry Pi- სთვის AIY voice HAT- ის გამოყენებით. ის იყენებს Google ხმის ამოცნობის სისტემას LED- ებისა და ორი სერვისის გასაკონტროლებლად, ხტუნვის ჯეკის მკლავებსა და ფეხებს მართავს ძალიან მარტივი მექანიზმით.
პროგრამული უზრუნველყოფა ფონზე მუშაობს servo_demo.py სკრიპტის მოდიფიკაცია, როგორც ეს აღწერილია AIY ხმის ნაკრების სახელმძღვანელოში. უბრალოდ მიჰყევით ინსტრუქციას მყარი და პროგრამული უზრუნველყოფის დასაყენებლად. მოწყობილობა თავად არის ადვილი ასაშენებელი და არ მოითხოვს ხელოსნობის დიდ უნარებს. გარდა ამისა, საჭრელი დანა, საბურღი და გასაყიდი რკინა სასარგებლო იქნება.
თუ ხელის დახამხამებით გაააქტიურებთ ხმის ამოცნობის სისტემას და იტყვით „ხელები მაღლა“, ხტუნვის ბუდე აწიებს ხელებს და ფეხებს, „ხელების ცენტრი“გადაინაცვლებს ორივე სერვისს შუა პოზიციაზე, ხოლო „ხელებს ქვემოთ“- ხელებსა და ფეხებს. დაიწიოს "მარცხნიდან ზემოთ" მარცხენა ხელი და ფეხები აიწევს და "მარჯვნივ ქვევით" მარჯვენა დაიწევს, "მარჯვნივ ზემოთ" პირიქით. "ცეკვა", გახდის მას ცეკვას, კარგად ყოველ შემთხვევაში. ის ასევე საუბრობს, გთხოვთ გადახედოთ თანდართულ ვიდეოს.
მცირე ძალისხმევით, თქვენ შეგიძლიათ შექმნათ თქვენი საკუთარი ცეკვის, სასაუბრო და მომღერალი რობოტი.
მისი გამოყენების გასაადვილებლად განსაკუთრებით მცირეწლოვანი ბავშვებისთვის და "ჯადოსნური" ფაქტორის გასაძლიერებლად, AIY ყუთზე ღილაკი შეიცვალა როგორც გამომწვევი სიახლოვის სენსორით. მისი სიმარტივისთვის, მე გამოვიყენე ციფრული დისტანციის სენსორის გარღვევა პოლოლუდან, რომელიც ცნობს თუ ობიექტი 5 სმ -ზე ახლოს არის და მისი გამოყენება შესაძლებელია ღილაკის მსგავსად. LED- ები მიუთითებენ, როდესაც მოწყობილობა ელოდება შეკვეთებს, უსმენს ან "ფიქრობს". სერვისები, სენსორი და LED- ები კონტროლდება GPIOZero პროგრამული ბიბლიოთეკით.
პროტოტიპი აგებულია Forex– დან, PVC ქაფის ფირფიტებიდან, რომლის ამოჭრა ძალიან ადვილია საჭრელი დანით და წებოთი, მაგრამ ასევე საკმაოდ სტაბილურია. მოგერიდებათ ააშენოთ უფრო დიდი, ლამაზი, გაუმჯობესებული ან უფრო ლამაზი ვერსია, მაგრამ კარგი იქნება თუ დოკუმენტირებთ და წარმოგიდგენთ თქვენს გაუმჯობესებებს.
თქვენ შეგიძლიათ გამოიყენოთ სხეულის ორივე მხარე, იმისდა მიხედვით, გსურთ წარმოადგინოთ მოძრავი მექანიზმი თუ გქონდეთ ლამაზი, ბავშვთა მეგობრული განლაგება. --------- "Hampelmann" არის გერმანული ტერმინი "jumping jack", რომელსაც აქვს გარკვეული დატვირთვა.
ნაბიჯი 1: გამოყენებული მასალები
ჟოლო პი 3; 32 £ Pimoroni, დიდი ბრიტანეთი
AIY ხმის ნაკრები; 25 £ Pimoroni, დიდი ბრიტანეთი
პოლოუს ციფრული მანძილის სენსორის გარღვევა მკვეთრი სენსორით, 5 სმ; 5.90 € Exp-tec.de– ზე
ორი 9 გრ
ორი თეთრი LED და რეზისტორი
ზოგიერთი სათაური და მხტუნავი კაბელი
2 მმ ფორექსის ფირფიტა, 250 x 500 მმ; 1.70 € მოდულორში, ბერლინი, გერმანია
M3 ხრახნები, თხილი და საყელურები, ყველა მოძრავი ნაწილის დასაკავშირებლად. მე გამოვიყენე ექვსი 10 და ოთხი 16 მმ ნეილონის ხრახნი.
ექვსი M2 ხრახნი და კაკალი, რომ დააფიქსიროს servos ფირფიტები და დააკავშირებს servos იარაღი და Gears.
რამდენიმე წვეთი პლასტიკური წებო
ნაბიჯი 2: მოწყობილობის შეკრება და გამოყენება
რაც შეეხება თავად AIY ხმის ნაკრებებს, უბრალოდ მიჰყევით ინსტრუქციას აღწერილობაში, რომელიც მოყვება ნაკრები, მათ შორის სერვოს შესახებ განყოფილების ჩათვლით. მე გირჩევთ მიამაგროთ რამდენიმე სამ პინიანი სათაური servo პორტებზე AIY ხმის გარღვევაზე, ასე რომ თქვენ შეგიძლიათ მარტივად დააკავშიროთ სერვისები, სენსორები და LED- ები HAT– თან.
ხტუნვის ჯეკთან დაკავშირებით, თქვენ შეგიძლიათ გამოიყენოთ ნახატები, რომლებიც მე მოვიყვანე აქ, როგორც svg- და PDF ფაილები, როგორც შაბლონი, ან უბრალოდ შეცვალოთ ისინი თქვენივე იდეების მიხედვით. შეიძლება მოგეწონოს გადაცემათა კოლოფის ფეხებისა და მხრის მამოძრავებელი მექანიზმის ძირითადი განლაგება, იმის უზრუნველსაყოფად, რომ ბრუნვის წერტილსა და გადაცემას შორის მანძილი ერთნაირია სერვოზე, მკლავში და ფეხიზე.
ალტერნატიულად, თქვენ ასევე შეგიძლიათ შექმნათ ვერსია, როდესაც მკლავები და ფეხები ამოძრავებს პირდაპირ ოთხ ცალკეულ სერვისს, ან უფრო მოწინავე მექანიზმს.
ნახატის გამოყენებით, ამოჭერით ცალი ფორექსის, მუყაოს ან პლაივუდის ფირფიტადან და გაბურღეთ ხვრელები შესაბამის პოზიციებზე. დააწებეთ მანძილის ნაჭრები მკლავებისა და ფეხების მბრუნავ წერტილებზე, რაც უზრუნველყოფს ხვრელების კარგ განლაგებას.
დააფიქსირეთ სერვოები და მოძრავი ნაწილები საბაზისო ფირფიტაზე. დაამატეთ მანძილის სენსორი და LED, როგორც ეს მითითებულია. Servos დაფიქსირდა M2 ხრახნები, ყველა მოძრავი ნაწილები M3 ხრახნები. მე გამოვიყენე ნეილონის M3 ხრახნები, მაგრამ ესთეტიკური მიზეზების გამო.
შეამოწმეთ არის თუ არა სერვო იარაღი მოთავსებული შუა პოზიციაში. შეაერთეთ servo იარაღი და გადაცემათა კოლოფი, მე ამ მიზნით გამოვიყენე M2 ხრახნები.
მიამაგრეთ servos, LED- ები და მანძილის სენსორი servo კონექტორებზე AIY დაფაზე. შეიძლება დაგჭირდეთ დრეკადობის/მხტუნვის კაბელები. მე დავამატე მარცხენა სერვო "servo0" (GPIO 26) მარჯვენა სერვო "servo2" (GPIO 13), LED- ები "servo5" (GPIO 24) და სენსორი "servo3" (GPIO 5) AIY- ზე ხმა ქუდი.
დააკოპირეთ მოწოდებული "Hampelmann.py" ფაილი AIY "src" ქვესაქაღალდეში და გახადეთ ის პირდაპირ შესრულებადი ვინმესთვის. ამისათვის თქვენ შეგიძლიათ აირჩიოთ ფაილი მენეჯერში, შემდეგ დააწკაპუნეთ მარჯვენა ღილაკით და შეარჩიეთ თვისებები, აირჩიეთ ნებართვები, გადადით შესრულებაზე, აირჩიეთ ~ ვინმეს. ან ჩაწერეთ "chmod +x src/Hampelmann.py" dev კონსოლში.
შეამოწმეთ არის თუ არა ყველაფერი ადგილზე დაფიქსირებული, ან მოძრაობს საჭიროების შემთხვევაში. გახსენით Dev ბრძანების სტრიქონი, შეიყვანეთ "src/Hampelmann.py" და დაიწყეთ პროგრამა. თუ თქვენ ხელს ან თითებს მოძრაობთ მანძილის სენსორის წინ, AIY განყოფილება ითხოვს შეკვეთებს და LED- ები აციმციმდება. შესრულებული ბრძანებებია "მარჯვენა/მარცხენა/ხელები ზემოთ/ქვემოთ/ცენტრში", "ცეკვა", "LED ჩართვა/გამორთვა" და "მშვიდობით".
თამაში. გადაადგილეთ ხელი სენსორის წინ, ისაუბრეთ მოთხოვნისას და მიეცით მოწყობილობას ცოტა დრო რეაგირებისთვის. ლატენტურობა საკმაოდ მაღალია. Crtl+C ან "Goodbye" შეწყვეტს პროგრამას.
თქვენ შეგიძლიათ შეცვალოთ ფაილი ნანოს ან სხვა მარტივი ტექსტური რედაქტორის გამოყენებით.
შენიშვნები: გთხოვთ გაითვალისწინოთ, რომ ზოგიერთი სიტყვა და ტერმინი აღიარებულია, როგორც დიდი ასოებით დაწყებული სიტყვები, როგორც „ცენტრი“ან „მარჯვენა ცენტრი“, ისევე როგორც სხვები, მაგ. 'პირდაპირ'. თქვენ უნდა გამოიყენოთ ხმის ამოცნობის მოდულის მიერ მოცემული ზუსტი ფორმა, რათა დაიწყოთ რაიმე მოქმედება.
ნაბიჯი 3: პითონის სკრიპტი
როგორც უკვე აღვნიშნეთ, სკრიპტი ემყარება servo_demo.py სკრიპტს AIY ხმოვანი ინსტრუქციიდან, გარკვეული დამატებებით. პირველი ვერსია არის Hampelmann.py ფაილი, რომელსაც ნახავთ მიმაგრებულს. AngularServo GPIOZero– სგან საშუალებას გაძლევთ შეზღუდოთ servo მოქმედების დიაპაზონი და ზუსტად განსაზღვროთ რამდენად შორს უნდა წავიდეს. მაგრამ მე მირჩევნია ბრიტანული ხმა ორიგინალზე. მოწყობილობას ასევე შეუძლია ლაპარაკი, მაგრამ არ ესმის (?), ინგლისური, გერმანული, იტალიური, ფრანგული და ესპანური. ქვემოთ ნახავთ Hampelmann2.py სკრიპტს, ბრიტანული ხმით და ცოტა იტალიური და გერმანული. გთხოვთ, გახსოვდეთ, რომ თქვენ გჭირდებათ სკრიპტების შესრულებადი მათ გასაშვებად.
#!/usr/bin/env python3 # ეს სკრიპტი არის servo_demo.py სკრიპტის ადაპტაცია AIY voice HAT- ისთვის, # ოპტიმიზირებულია AIY jumping jack import aiy.audio import aiy.cloudspeech import aiy.voicehat gpiozero იმპორტი LED საწყისი gpiozero იმპორტი AngularServo საწყისი gpiozero იმპორტის ღილაკი დროიდან იმპორტი ძილი def main (): ამოცნობადი = aiy.cloudspeech.get_recognizer () ამოცნობადი.ექსპექტური ფრაზა ('მარჯვნივ ზემოთ') აღიარებელი.ექსპექტირებული ფრაზა ('მარჯვნივ ქვემოთ') აღიარებელი.ექსპექტირებული ფრაზა ('მარჯვნივ ცენტრი ') # დიდი ასო არის განზრახ ამოცნობადი. მოლოდინი ფრაზა ("მარცხნივ") ცნობადი. მოლოდინი ფრაზა ("მარცხნიდან ქვემოთ") ცნობადი. მოლოდინი ფრაზა ("მარცხენა ცენტრი") ცნობადი ("ხელები ქვევით") ამოცნობა.მოლოდინი_ ფრაზა ("ხელების ცენტრი") ცნობისმოყვარე.მოლოდინის_ ფრაზა ("ცეკვა") ცნობისმოყვარეობა.მოლოდინის ფრაზა ("შუქნიშანი").audio.get_recorder (). დაწყება () servo0 = AngularServo (26, min_angle = -40, max_angle = 40) # პირველი დაკავშირება ან, GPIO 26 servo2 = AngularServo (13, min_angle = -40, max_angle = 40) # მე -3 კონექტორი, GPIO 13 led0 = LED (24) # LED- ები დაკავშირებულია servo5/GPIO 24 მანძილზე = ღილაკი (5) # მანძილის სენსორი to servo3/GPIO 05 # სხვა: GPIO 6 at servo1, 12 at servo4 aiy.audio.say ("გამარჯობა!",) aiy.audio.say ("დასაწყებად, მიიტანე ხელი სენსორთან ახლოს",) მართალია: led0.on () # LED- ები დასაბეჭდად ("ხმის ამოცნობის გასააქტიურებლად, ხელი მიიტანეთ მანძილის სენსორთან ახლოს, შემდეგ ისაუბრეთ") ბეჭდვა ("მოსალოდნელი საკვანძო სიტყვებია: ხელები/მარცხნივ/მარჯვნივ ზემოთ/ქვემოთ/ცენტრში,") ბეჭდვა ("LED ჩართვა/გამორთვა, ცეკვა და მშვიდობით.") ბეჭდვა () distance.wait_for_press () print ("მოსმენა …") aiy.audio.say ("გთხოვთ მიაწოდოთ თქვენი ბრძანებები",) led0.blink () # light დახუჭე ტექსტი = ამოცნობა. აღიარება () თუ ტექსტი არ არის: aiy.audio.say ("უკაცრავად, მე არ გამიგია.",) სხვა: დაბეჭდვა ("შენ თქვი" ", ტექსტი," ")) # ნება მომეცი შეამოწმეთ სისტემების ინტერპრეტაცია, თუ ტექსტი არის „მარჯვნივ“: ბეჭდვა („გადატანა servo0 მაქსიმალურ პოზიციაზე“) servo0.angle = 35 elif „მარჯვნივ ქვემოთ“ტექსტში: print („გადატანა servo0 მინიმალურ პოზიციამდე ') servo0.angle = -35 elif' მარჯვენა ცენტრი 'ტექსტში: #სწორი სათაურები კრიტიკული ბეჭდვაა (' servo0 შუა პოზიციაზე გადატანა ') servo0.angle = 0 elif' left up 'in text: print (' Servo2- ის გადატანა მაქსიმალურ პოზიციაზე ') servo2.angle = -35 elif' მარცხნივ 'ტექსტში: ბეჭდვა (' servo2- ის გადატანა მინიმალური პოზიციიდან ') servo2.angle = 35 elif' მარცხენა ცენტრი 'ტექსტში: ბეჭდვა (' servo2- ის გადატანა შუა პოზიცია ') servo2.angle = 0 elif' ხელები ზემოთ 'ტექსტში: ბეჭდვა (' servo2- ის გადატანა მაქსიმალურ პოზიციაზე ') servo2.angle = -35 servo0.angle = 35 elif' ხელები ქვემოთ 'ტექსტში: ბეჭდვა (' მოძრავი servo2 მინიმალური პოზიციიდან ') servo2.angle = 35 servo0.angle = -35 elif' ხელები ცენტრი 'ტექსტში: ბეჭდვა (' servo2 შუა პოზიციაში გადატანა ') servo2.angle = 0 servo0.angle = 0 elif' LED გამორთული ' ტექსტში: ბეჭდვა ("გარე LED- ის გამორთვა 0") led0.off () elif "LED on" ტექსტში: ბეჭდვა ("გარე LED ჩართვა 0") led0.on () # light elif "ცეკვა" ტექსტში: ბეჭდვა ("ახლა ასრულებს ცეკვის ნომერ პირველს") aiy.audio.say ("კარგი, მე შევეცდები ყველანაირად!",) led0.on () # განათება ჩართულია მე დიაპაზონში (3): servo0.angle = 0 servo2.angel = 0 ძილი (1) servo0.angle = 35 servo2.angle = -35 ძილი (1) servo0.angle = 0 servo2.ango = -35 ძილი (1) servo0.angle = -25 servo2.angle = 0 ძილი (1) servo0.angle = 30 servo2.angle = 20 ძილი (1) servo0.angle = 0 servo2.angle = 0 led0.off () # სინათლის გამორთვა elif "ნახვამდის" ტექსტში: aiy.audio.say ("მშვიდობით",) aiy.audio.say ("Arrivederci",) aiy.audio.say ("Auf Wiedersehen",) servo0.angle = 0 servo2.angle = 0 led0.off () sleep (3) print ('bye!') break else: print ('keyword not known!') aiy.audio.say ("უკაცრავად, მე ვერ გამიგე",) თუ _name_ == _ მთავარი_ ': მთავარი ()
გირჩევთ:
ხმით კონტროლირებადი რობოტი V3 მოდულის გამოყენებით: 6 ნაბიჯი
ხმის კონტროლირებადი რობოტი V3 მოდულის გამოყენებით: ეს რობოტი შეიძლება ადვილად გაკეთდეს ვინმეს მიერ, უბრალოდ მიჰყევით პროცესს, როგორც მე მივეცი. ეს არის ხმის კონტროლირებადი რობოტი და თქვენ შეგიძლიათ ნახოთ ჩემი რობოტის დემო, რომლის გამოყენება შეგიძლიათ ორი გზით. დისტანციური და სხვა ხმოვანია
ხმით კონტროლირებადი R2D2 შთაგონებული დროიდი ბლინკისა და იფტტის გამოყენებით: 6 ნაბიჯი
ხმით კონტროლირებადი R2D2 შთაგონებული დროიდი ბლინკისა და იფტტის გამოყენებით: ვარსკვლავური ომების ყურებისას ბევრ ჩვენგანს რობოტების პერსონაჟი, განსაკუთრებით R2D2 მოდელი, შთაგონებული აქვს. მე არ ვიცი სხვების შესახებ, მაგრამ მე მიყვარს ის რობოტი. რადგან მე ვარ რობოტის მოყვარული, მე გადავწყვიტე ავაშენო ჩემი საკუთარი R2D2 დროიდი ამ დაბლოკვისას blynk Io გამოყენებით
მოლაპარაკე ავტომატიზაცია -- აუდიო არდუინოდან -- ხმით კონტროლირებადი ავტომატიზაცია -- HC - 05 Bluetooth მოდული: 9 ნაბიჯი (სურათებით)
მოლაპარაკე ავტომატიზაცია || აუდიო არდუინოდან || ხმით კონტროლირებადი ავტომატიზაცია || HC - 05 Bluetooth მოდული: …………………………. გთხოვთ გამოიწეროთ ჩემი YouTube არხი მეტი ვიდეოსთვის …. …. ამ ვიდეოში ჩვენ ავაშენეთ Talkative Automation .. როდესაც თქვენ გაგზავნით ხმოვან ბრძანებას მობილურით, ის ჩართავს სახლის მოწყობილობებს და გამოაგზავნის გამოხმაურებას
COVID-19 შთაგონებული ხმით კონტროლირებადი სახლის ავტომატიზაცია: 5 ნაბიჯი
COVID-19 შთაგონებული ხმით კონტროლირებადი სახლის ავტომატიზაცია: ბოლო 4 წლის განმავლობაში, მე ვცადე 3 ან 4 განსხვავებული ვარიაცია არდუინოზე დაფუძნებული სახლის კონტროლისთვის. ყველას მოხერხებულობისთვის აქ არის ჩემი ზოგიერთი განვითარების ქრონოლოგიური ისტორია. ინსტრუქცია 1 - 2015 წლის ოქტომბერში გამოიყენეს IR და RF კომუნიკაცია
ხმით კონტროლირებადი რობოტი 8051 მიკროკონტროლის გამოყენებით: 4 ნაბიჯი (სურათებით)
ხმით კონტროლირებადი რობოტი 8051 მიკროკონტროლის გამოყენებით: ხმოვანი რობოტი იღებს მითითებულ ბრძანებას ხმის სახით. როგორიც არ უნდა იყოს ბრძანება ხმოვანი მოდულის ან Bluetooth მოდულის საშუალებით, ის გაშიფრულია არსებული კონტროლერის მიერ და შესაბამისად შესრულებულია მოცემული ბრძანება. აქ ამ პროექტში მე