Სარჩევი:

Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266: 9 ნაბიჯი
Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266: 9 ნაბიჯი

ვიდეო: Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266: 9 ნაბიჯი

ვიდეო: Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266: 9 ნაბიჯი
ვიდეო: ფრენკ მილერს რობოკოპის განმარტება-გი... 2024, ნოემბერი
Anonim
Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266
Alexa ხმის კონტროლის ტელევიზია დისტანციური ESP8266

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

საჭირო აპარატურა:

  1. ამაზონის ექო ან წერტილი
  2. Wifi როუტერი, რომლის პორტირებაც შესაძლებელია (ჩემმა სერვისის პროვაიდერმა გააკეთა ეს ჩემთვის)
  3. Arduino NANO გადაკეთდა 3V3
  4. ESP8266 -01 ან მსგავსი
  5. IR გადამცემი მოდული ან წრე
  6. IR მიმღების მოდული, თუ გსურთ კოდების გადაღება.

საჭირო პროგრამული უზრუნველყოფა და მომსახურება:

  1. Arduino IDE, მე გამოვიყენე 1.6.11
  2. Amazon Alexa უნარების ანგარიში (უფასო)
  3. Amazon AWS ანგარიში (უფასო იარუსი, მაგრამ მოითხოვს საკრედიტო ბარათს ანგარიშის გასახსნელად) ან ალტერნატიული სერვერი.

ნაბიჯი 1: Alexa უნარების დაყენება

Alexa უნარების დაყენება
Alexa უნარების დაყენება
Alexa უნარების დაყენება
Alexa უნარების დაყენება
Alexa უნარების დაყენება
Alexa უნარების დაყენება

Alexas უნარების ნაკრები იღებს ხმოვან ბრძანებას და ფილტრავს მას 'ღირებულებების' სიის გამოყენებით

ერთხელ დარეგისტრირდა:

Amazon დეველოპერის კონსოლში აირჩიეთ Alexa tab> Alexa Skills Kit [დაწყება]

[დაამატეთ ახალი უნარი]

უნარის ტიპი: პერსონალური ურთიერთქმედების მოდელი

ენა: შეარჩიეთ სწორი, როდესაც ეს მითითებული იყო ინგლისურზე (აშშ) ის არ პასუხობდა!

სახელი: ეს არ არის მნიშვნელოვანი, რადგან ჩვენ არ ვაქვეყნებთ.

მოწვევის სახელი: შეარჩიეთ მოკლე სახელი, მისი სიტყვა გამოიყენება პროგრამის გასახსნელად.

[შემდეგი]

განზრახ სქემა, ჩასვით კოდი

სლოტის მორგებული ტიპები {სლოტის ტიპის დამატება], შეიყვანეთ EFFECT_ON_TV

სლოტის მნიშვნელობებში, ჩასვით კოდი

ნიმუშის გამონათქვამები, დააყენა, TVCommandIntent ტელევიზია {TVAction}

[შენახვა], შემდეგ უნარ -ჩვევების გვერდზე ჩვენ უნდა დავამატოთ ბმული იმ კოდზე, რომლის გაშვებასაც ვაპირებთ, როდესაც "განზრახვა" ამოქმედდება ან პროგრამის დაწყებული სიტყვით "დაწკაპუნებით", ან ამის შემდეგ "ტელევიზიის {slot value}" რა

ჩვენ დავბრუნდებით ალექსაზე მას შემდეგ, რაც დავაყენებთ Lambda სერვერის პითონის სკრიპტს.

ნაბიჯი 2: AWS Lambda Server Python Script

დარეგისტრირდით AWS– ის უფასო საფეხურზე, მე მქონდა შეშფოთება, რომ ეს შეიძლება დამიჯდეს რეალური ფული, მაგრამ გარკვეული პერიოდის გამოყენების და ფორუმების კითხვის შემდეგ გამოყენების ლიმიტები იმდენად მაღალია პირადი და განვითარებისათვის, რომ ის არასოდეს უნდა მიაღწიოს საფასურს. არსებობს თქვენი HTTPS სერვერის გამოყენების ალტერნატივა და იქნებ ეს არის ის, რისი გაკეთებაც esp8266– ს შეუძლია, სხვა სასწავლო!

ეს არის კოდი, რომელიც გააქტიურებულია, როდესაც გამოძახების სახელი (მაგალითად, "Alexa open clicker") და იღებს ჯადოსნურ სიტყვას ალექსასგან. როგორც კი აპლიკაცია დაიწყება, თქვენ მხოლოდ უნდა თქვათ "tv play, tv jump ხუთი" და Alexa გამოგიგზავნით "play", "jump 5" ამ პითონის სკრიპტს. აპლიკაცია ამოიწურება, თუ მას გარკვეული დროის შემდეგ პასუხი არ აქვს.

AWS სერვისებში, ჯერ შეარჩიეთ თქვენი ადგილმდებარეობა, ზედა მარჯვნივ არის ვარიანტი.

აშშ -სთვის შერჩეული ვირჯინია, ევროკავშირისთვის ირლანდიისათვის.

აირჩიეთ Lambda გამოთვლის სათაურიდან.

[შექმენით ლამბდა ფუნქცია]

[ცარიელი ფუნქცია]

ტრიგერის კონფიგურაცია: დააწკაპუნეთ წერტილოვან ყუთზე და შეარჩიეთ Alexa Skills Kit

[შემდეგი]

ფუნქციის კონფიგურაცია

დაასახელე რაც გინდა

აღწერა, თქვენზეა დამოკიდებული

რუნტინი: პითონი 2.7

ჩასვით პითონის კოდი,

კოდში URL HTTP მისამართი უნდა შეიცვალოს თქვენს გარე IP მისამართზე მოგვიანებით

ბმული = "https://185.255.255.255:777/text?data=" + საყვარელი_ფერი

ეკრანზე ქვედა არის ROLE, დააწკაპუნეთ ჩანართზე და აირჩიეთ აირჩიეთ მორგებული როლი

ეს გახსნის ახალ ეკრანს და დააწკაპუნებს ნებადართვას., ის ბრუნდება ფუნქციის კონფიგურაციის ეკრანზე Lamda ძირითადი შესრულებით შერჩეული როგორც არსებული როლი.

[NEXT] მიმოხილვა, დააჭირეთ [შექმენით ფუნქცია] და ის უნდა შეადგინოთ და მოგცეთ ARN ნომერი. დააკოპირეთ ეს კოდი და ჩვენ მას ჩავდებთ ალექსას უნარების ნაკრებში.

ნაბიჯი 3:

ნაბიჯი 4: დააყენეთ Alexa Skills Kit ბმული AWS Lambda

დააყენეთ Alexa Skills Kit ბმული AWS Lambda
დააყენეთ Alexa Skills Kit ბმული AWS Lambda

ალექსას უნარების ნაკრებში შეარჩიეთ კონფიგურაციის გვერდი, სათაურით Global Fields და შეარჩიეთ AWS Lambda და თქვენი რეგიონი და ჩასვით ARN კოდი ყუთში, [NEXT], ტესტირებისას, შეამოწმეთ არჩეულია ჩართული.

ჩვენ ახლა ვაკეთებთ აქ, ახლა ზოგიერთი ტექნიკისთვის.

ნაბიჯი 5: Arduino NANO 3V3 კონვერტაცია

Arduino NANO 3V3 კონვერტაცია
Arduino NANO 3V3 კონვერტაცია
Arduino NANO 3V3 კონვერსია
Arduino NANO 3V3 კონვერსია

ESP8266 მუშაობს 3v3– დან, ასე რომ თქვენ აწარმოებთ მას გარე რეგულატორიდან ან გადააქვთ ნანო. მე გამოვიყენე კლონი ნანო CH340 USB ჩიპით. მე მაქვს ორი განსხვავებული PCB ფორმატი, რომელიც ვიცი, მაგრამ იმედია ეს დაფარავს უმეტეს განლაგებას.

ჩვენ უნდა შევცვალოთ 5V მარეგულირებელი პინით თავსებადი 3v3 ერთი, 1117-3. შემდეგ გაუშვით 5V USB სოკეტიდან მხოლოდ რეგულატორზე და დაუკავშირეთ ყველაფერი მის გამოსავალს. საბედნიეროდ ამის მიღწევა შესაძლებელია შეყვანის დიოდის ამოღებით, მარეგულირებლის შეცვლით და ერთი მავთულის დამატებით დიოდის მხრიდან Vin- ზე ნანო დაფაზე.

შეამოწმეთ შეგიძლიათ კონვერტაციის შემდეგ ნანოს დაპროგრამება.

ნაბიჯი 6: NANO კოდი

NANO კოდი
NANO კოდი
NANO კოდი
NANO კოდი

ეს იყენებს კოდებს ჩემი SKY UK– ის დისტანციური მართვისთვის, ეს შეიძლება იყოს მოდელის სპეციფიკური და ღირს შეამოწმოთ თქვენი კოდების მუშაობა ცალკეულ ესკიზში, რომელიც არ არის დაკავშირებული esp8266– თან.

მე ვიყენებ IRremote ბიბლიოთეკას shirriff ვერსია 2.0.1

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

შეაერთეთ ebay– ზე არსებული IR გადამცემი ან შექმენით ერთი. თქვენ უნდა გამოიყენოთ 850nm IR led, რადგან ეს არის ყველაზე გავრცელებული მიმღებებში. IR ბიბლიოთეკამ გამოიყენა D3 როგორც TX პინი

ალექსია სიტყვა გადადის ნანოზე, ამიტომ აქედან მისი ნანო ხმის კონტროლით.

ნაბიჯი 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

ბევრია ESP8266 მოდული, მე გამოვიყენე ერთი, რომელიც მიკროსკოპის ქვეშ უნდა შემეკრა, ESP8266-01– ს აქვს 2x4 სათაური და ყველა საჭირო ქინძისთავები და იაფია. უამრავი მაგალითი ინტერნეტში,. ჩემი მოგზაურობა იზრდება, GPIO_0 უნდა იყოს დაკავშირებული gnd- თან გაშვების დროს (შემდეგ შეიძლება გადაადგილდეს) პროგრამირების დროს, მისი კონფიგურაციის პინი, მაღალია შინაგანად. ერთხელ დაპროგრამებული ნება GPIO_0 float და ხელახლა ძალა. CHPD მუდმივად უკავშირდება V+ - ს.

Arduino 1.6.11– ის გამგეობის მენეჯერს არ აქვს esp8622 ბმული, Arduino IDEfile> პარამეტრები> დამატებითი დაფის მენეჯერის URL– ები, დაამატეთ:

arduino.esp8266.com/stable/package_esp8266c…

შემდეგ გადადით დაფის მენეჯერზე და იპოვეთ esp8266 პაკეტი. ამან უნდა მოგცეთ esp8266 დაფების დიდი სია, შეარჩიეთ ინსტრუმენტები> დაფა> ESP8266 ზოგადი მოდული. Usb to uart მოდულის გამოყენებით თქვენ შეგიძლიათ დაპროგრამოთ esp ნაწილი esp8266_server_text- ით. ჩართეთ 3V3, დააკავშირეთ TX-RX, RX-TX და Gnd.

თქვენ უნდა შეიყვანოთ თქვენი ქსელის SSID და პაროლი სკრიპტში და პორტში, რომელსაც დააყენებთ პორტის გადაგზავნისთვის, მაგ. 777.

თქვენ შეგიძლიათ გაუშვათ კოდი ხელახლა ჩართვით esp ხოლო USB to uart კონვერტორთან დაკავშირებული და arduino სერიული ფანჯარა (9600 baud) უნდა აჩვენოს esp მოდულის ადგილობრივი IP მისამართი. შეიყვანეთ ეს კოდი და ხელახლა დაპროგრამეთ.

ნაბიჯი 8: ქსელის დაყენება

ქსელის დაყენება
ქსელის დაყენება
ქსელის დაყენება
ქსელის დაყენება

ასე რომ, Lambda URL ზარის დასაკავშირებლად ESP HTTP სერვერთან, ჩვენ უნდა დავაყენოთ თქვენი როუტერი პორტის გადაგზავნაზე. მე მივიღე ჩემი გარე ip მისამართი https://www.whatsmyip.org/, მე ვარ მიკროტალღურ ბმულზე, ასე რომ ჩემს პროვაიდერს აქვს როუტერი და მე მომიწია მათგან პორტის გადაგზავნის მოთხოვნა. მე უნდა მივაწოდო ESP8266- ის IP მისამართი ჩემს ქსელში და ჩემს მიერ არჩეული პორტი, მაგ. 777. გარე IP მისამართი უნდა შევიდეს lambda python სკრიპტში და თქვენი ადგილობრივი esp მისამართი ნაჩვენები იქნება როდესაც თქვენ გაუშვებთ esp8266 კოდს USB to uart ბმული.

ESP მოდული USB– დან uart კავშირზე უნდა აჩვენოს ტერმინალზე lambda– დან შემომავალი სიტყვა.

შეაერთეთ ESP ნანოსთან, როგორც ნაჩვენებია 3v3, gnd და TX ნანო D2 რბილ სერიალზე. თუ თქვენ გაქვთ ნანო USB- ზე სერიული კომუნიკაციის ეკრანზე, ის უნდა აჩვენოს რას იღებს esp– დან.

თუ ESP არ არის დაკავშირებული ქსელთან ან არ პასუხობს URL ზარს lambda– დან, lambda ამოიწურება და Alexa იუწყება წარუმატებლობის უნარის პასუხს

ნაბიჯი 9: Alexa Open Clicker TV პაუზა

Alexa Open Clicker TV პაუზა
Alexa Open Clicker TV პაუზა

მოდული მიმღების გვერდით დავდე, მაგრამ უფრო მაღალი სიმძლავრის IR გამომავალი შეიძლება იყოს სადმე ოთახში. მე ვიყენებ ცნობილი ბრენდის usb დენის ადაპტერს, რათა მივაწოდო ენერგია USB- ის საშუალებით.

დაჯექი და თქვი "Alexa open Clicker"

სატელევიზიო სახელმძღვანელო

ტელევიზია ჩამოდი

ტელევიზიის არჩევა

სატელევიზიო თამაში

სატელევიზიო ხტომა ხუთი

წუთის წინ განსაზღვრული რაოდენობის წინ გადასასვლელად მაკრო გადადის 30 -ჯერ დაელოდეთ მოთხოვნილ დროს და შემდეგ ითამაშეთ.

დიდი ბრიტანეთის რეკლამები დაახლოებით ხუთი წუთია.

აპლიკაციიდან გასასვლელად თქვით, რომ ალექსამ დატოვა.

მიირთვით.

გირჩევთ: