Სარჩევი:

AIY უნივერსალური IR დისტანციური მართვა: 5 ნაბიჯი
AIY უნივერსალური IR დისტანციური მართვა: 5 ნაბიჯი

ვიდეო: AIY უნივერსალური IR დისტანციური მართვა: 5 ნაბიჯი

ვიდეო: AIY უნივერსალური IR დისტანციური მართვა: 5 ნაბიჯი
ვიდეო: Stress, Portrait of a Killer - Full Documentary (2008) 2024, ნოემბერი
Anonim
AIY უნივერსალური IR დისტანციური მართვა
AIY უნივერსალური IR დისტანციური მართვა

ეს ინსტრუქცია აღწერს როგორ გავაკეთოთ AIY უნივერსალური ინფრაწითელი დისტანციური მართვა. ეს შეიძლება გამოყენებულ იქნას ნებისმიერი ტელევიზიის, ხმის პანელის, დიგიბოქსის, DVD ან bluray პლეერის გასაკონტროლებლად თქვენი ხმის გამოყენებით.

მე მას უნივერსალურს ვუწოდებ, რადგან ის შეიცავს IR მიმღებს, რომლის საშუალებითაც შესაძლებელია ნებისმიერი დისტანციური მართვისგან ინფრაწითელი სიგნალის ჩაწერა.

AIY პროექტი იყენებს LIRC პროგრამას IR სიგნალის ჩასაწერად და გადასაცემად.

ნაბიჯი 1: გააკეთეთ PCB

გააკეთეთ PCB
გააკეთეთ PCB
გააკეთეთ PCB
გააკეთეთ PCB

ნაწილების სია:

ორი 940nm 5 მმ ინფრაწითელი LED გამცემი

ერთი TSOP38238 ინფრაწითელი მიმღები

ერთი 2n3904 ტრანზისტორი

ერთი 10 ohm რეზისტორი

ერთი ვერობორდი

ოთხი ერთჯერადი კონექტორი (სურვილისამებრ - მე დავჭერი ექვსი პინიანი კონექტორი ერთ კონექტორში)

კაბელები AIY ქუდთან დასაკავშირებლად.

დარწმუნდით, რომ IR LED- ებს აქვთ გრძელი ფეხი პირველ რიგში, ხოლო მოკლე ფეხი მეორეზე. მეორე LED გრძელი ფეხი მეორე რიგში, ხოლო მოკლე ფეხი მესამეზე.

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

რეზისტორი მიდის მეხუთე და რვა რიგებს შორის.

გამოიყენეთ მოკლე ნაჭერი მავთულის დასაკავშირებლად რიგი ერთი რიგი მეშვიდე.

შეაერთეთ IR მიმღები მეშვიდე, რვა და ცხრა რიგში.

დაამატეთ კონექტორები ერთი, ოთხი, რვა და ცხრა რიგებში.

კონექტორები არის:

პირველი რიგი - +5 ვ სიმძლავრე

რიგი ოთხი - გადამცემი სიგნალი

რიგი რვა - გრუნტი

რიგი ცხრა - მიმღების სიგნალი

ნაბიჯი 2: დაუკავშირდით AIY ქუდს

დაუკავშირდით AIY ქუდს
დაუკავშირდით AIY ქუდს
დაუკავშირდით AIY ქუდს
დაუკავშირდით AIY ქუდს

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

ქინძისთავები, რომლებსაც ვიყენებ, არის Servo 0 (GPIO 26) და Servo 5 (GPIO 24) სიგნალისთვის. მე ასევე გამოვიყენე +5v ჰორიზონტალური პინიდან სერვო ქინძისთავების ზემოთ. მე მივიღე GND– დან Servo 0– ის გვერდით, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ ნებისმიერი საფუძველი, რაც გსურთ.

შესაბამისი კაბელების გამოყენებით, მე AIY ქუდი დავუკავშირე დაფას ასე:

+5V პირველ რიგში

Servo 0 (GPIO 26) მეოთხე რიგში

GND რიგი 8 -მდე

Servo 5 (GPIO 24) ცხრა რიგში.

ნაბიჯი 3: დააინსტალირეთ LIRC

დავუშვათ, რომ თქვენ უკვე შექმენით და გამოსცადეთ AIY:

ჩვენ უნდა დავაინსტალიროთ LIRC. მიჰყევით მირზა ირვან ოსმანის ამ ძვირფას ინსტრუქციას:

www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package

ან ალტერნატიული ინსტრუქცია შეგიძლიათ ნახოთ აქ ალექს ბეინმა:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/

შენიშვნა: ჩემი კონფიგურაციისთვის მჭირდებოდა იმის უზრუნველყოფა, რომ /boot/config.txt ფაილს ჰქონოდა შემდეგი:

dtoverlay = lirc-rpi, gpio_in_pin = 24, gpio_out_pin = 26

ნაბიჯი 4: მიიღეთ ან შექმენით LIRC ფაილები თქვენი მოწყობილობებისთვის

შემდეგი ნაბიჯი ქმნის lircd.conf ფაილს, რომელიც შეიცავს დეტალებს დისტანციური მართვის შესახებ იმ მოწყობილობებისთვის, რომელთა გამოყენებაც გსურთ.

ამ ფაილის შექმნის ორი გზა არსებობს:

1. თუ გაგიმართლათ, შეგიძლიათ იპოვოთ არსებული ფაილი თქვენი მოწყობილობის LIRC გვერდებზე

2. თუ თქვენ ვერ პოულობთ მას, მაშინ დაგჭირდებათ ფაილის ჩაწერა IR მიმღების და თქვენი დისტანციური მართვის გამოყენებით.

ნაბიჯი 1 გადადით LIRC მთავარ გვერდზე და გადახედეთ მხარდაჭერილი მოწყობილობების ჩამონათვალს:

www.lirc.org/

თუ თქვენ შეგიძლიათ იპოვოთ ფაილი მოწყობილობისთვის, მაშინ თქვენ უნდა გადაიტანოთ ინფორმაცია ფაილში lircd.conf ფაილში /etc /lirc

ვინაიდან ჩემი AIY არის უსათაურო, მე ვიყენებ WINScP– ს, რათა შევიტანო ცვლილებები lirc.conf– ში.

თქვენთვის საჭირო ინფორმაცია იწყება „დისტანციური დაწყება“და მთავრდება „დასასრულის დისტანციურით“

შენიშვნა: თუ გსურთ გააკონტროლოთ ერთზე მეტი მოწყობილობა, მაშინ უბრალოდ დაამატეთ დამატებითი დისტანციური კოდი იმავე ფაილში არსებული "დასასრულის დისტანციური" მას შემდეგ. დარწმუნდით, რომ თითოეულ დისტანციურს აქვს უნიკალური სახელი. მე ვიყენებ "mytv" - ს ჩემი ტელევიზიისათვის და "sky" - ს ჩემი ცის digibox და ა.შ.

თუ თქვენი მოწყობილობის კოდს ვერ პოულობთ, მაშინ მისი ჩაწერა დაგჭირდებათ.

მიჰყევით ამ ინსტრუქციას, რომ ისწავლოთ თითოეული დისტანციური მართვის ჩაწერა LIRC– ის გამოყენებით:

www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/

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

ნაბიჯი 5: კოდი AIY თქვენი მოწყობილობების გასაკონტროლებლად

AIY– დან IR გადამცემის გასაკონტროლებლად, შეიტანეთ საჭირო ცვლილებები ფაილში „ასისტენტ_ლიბარონი_თან_წესრიგით_დემო.პით“

თქვენ შეგიძლიათ გაუშვათ "დამხმარე_ ბიბლიოთეკა_ ერთად_ლოკალური_კომანდსი_დემო.პია" სტარ დევის ტერმინალიდან, რათა ნახოთ მუშაობს თუ არა თქვენი კოდი.

მე მაქვს ჩემი AIY ავტომატურად ჩატვირთვისას აქ მითითებების შესაბამისად:

aiyprojects.withgoogle.com/voice/#makers-guide-3-4--run-your-app-automatically

იცოდეთ, რომ თუ გსურთ შეცვალოთ თქვენი კოდი, მაშინ უნდა შეწყვიტოთ AIY გაშვება და შემდეგ კვლავ დაიწყოთ მათი გამოყენებით:

sudo სერვისი my_assistant stop

sudo სერვისი my_assistant start

თანდართული კოდი შეიცავს ჩემს მიმდინარე სამუშაო პროგრამას.

(გაითვალისწინეთ, რომ ეს კოდი ასევე შეიცავს დამატებით ფუნქციებს, როგორიცაა ინტერნეტ რადიო).

კოდი იყენებს ვარიაციებს LIRC send_start და send_stop გაგზავნისთვის საჭირო IR სიგნალის გადასაცემად. მე აღმოვაჩინე, რომ აუცილებელია სიგნალის დაწყებასა და შეწყვეტას შორის პაუზის შემოღება და ეს შეიძლება განსხვავდებოდეს მოწყობილობებს შორის (ჩემი Panasonic TV მოითხოვს უფრო დიდ სიგნალს ვიდრე ცის ყუთი). ასე მაგალითად:

subprocess.call ('irsend SEND_START mytv KEY_POWER', shell = True)

დრო. ძილი (0.5)

subprocess.call ('irsend SEND_STOP mytv KEY_POWER', shell = True)

სიგნალების კომბინაციის გასაგზავნად, მაგალითად ცის სატელევიზიო არხი, მე შევქმენი სია, რომელიც არხების კოდს მიანიჭებდა ფრაზას. გაითვალისწინეთ, რომ ხანდახან AIY ყოველთვის არ მოისმენს სწორ სიტყვას, ამიტომ მე ასევე შევიტანე ვარიაციები ფრაზაზე (მაგალითად, bbc 1 და bbc one, ან სიტყვა "სახელმძღვანელო", ისევე როგორც "dave", როგორც AIY ყოველთვის ბრუნდებოდა, როდესაც მე თქვა "დეივ" - ეს უნდა იყოს ჩემი აქცენტი!). შემდეგ მე გამოვიყენე რუტინა, რომელიც ამოიღებდა სამი სიმბოლოს კოდს სიიდან და გადასცემდა თითოეულ ნომერს (იხ. მოდული ## ცის არხის შეცვლის რუტინა ##)

ასევე შესაძლებელია სიგნალების კომბინაციის გაგზავნა რამდენიმე მოწყობილობაზე. მაგალითად, მე მაქვს "სისტემა ჩართული" რუტინა, რომელიც აგზავნის ენერგიას ტელევიზორზე, ჩართავს ხმის ზოლს, იწყებს ცის ყუთს და გადააქვს BBC 1 -ზე.

მას შემდეგ, რაც IR გადამცემი მუშაობს AIY– სთან, შესაძლებელია მისი გამოყენების ყველა განსხვავებული კომბინაციის მოფიქრება. მაგალითად, შემიძლია გამოვაგზავნო დროის ბრძანება ხმის ზოლზე მოცულობის შესაცვლელად.

ბედნიერი AIY IR დისტანციური მართვა!

გირჩევთ: