Სარჩევი:

ჟოლოს მზვერავი რობოტი: 8 ნაბიჯი (სურათებით)
ჟოლოს მზვერავი რობოტი: 8 ნაბიჯი (სურათებით)

ვიდეო: ჟოლოს მზვერავი რობოტი: 8 ნაბიჯი (სურათებით)

ვიდეო: ჟოლოს მზვერავი რობოტი: 8 ნაბიჯი (სურათებით)
ვიდეო: SUB. ЛУЧШАЯ ОРГАНИЗАЦИЯ ХРАНЕНИЯ НА КУХНЕ. УБОРКА И ИДЕАЛЬНЫЙ ПОРЯДОК. 2024, ივლისი
Anonim
Image
Image
ჟოლოს მზვერავი რობოტი
ჟოლოს მზვერავი რობოტი

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

ნაბიჯი 1: Robot Electronics

Robot Electronics
Robot Electronics

დავიწყე DFRobot– დან 2WD MiniQ შასის ნაკრების აწყობით. ბორბლები გადავაგდე ძრავის ლილვებზე, შემდეგ ჩავდე ფრჩხილებში და დავამაგრე შასიზე. საბოლოოდ, მე დავამატე ლითონის საყრდენები. ახლა დრო იყო მთავარი დაფის აშენება. L293d ძრავის მძღოლი ადგილზე შედუღდა, ასევე მავთულები Raspberry Pi– ს GPIO ქინძისთავებზე. შემდეგი, მე შევაერთე ბატარეის კონექტორი, რადგან ის უზრუნველყოფს ძირითად ენერგიას. დენის წყაროს დამატების შემდეგ დავაყენე 5V რეგულატორი.

ნაბიჯი 2: Pi- ის დაყენება

პიის დაყენება
პიის დაყენება

DFRobot– მა გამომიგზავნა და გამომიგზავნა მათი Raspberry Pi 3 და Raspberry Pi კამერის მოდული. ასე რომ, ყუთების გახსნის შემდეგ მე მივიღე უფლება ვიმუშაო SD ბარათის შექმნით. პირველად მივედი Raspberry Pi ჩამოტვირთვების გვერდზე და გადმოვწერე Raspbian– ის უახლესი ვერსია. შემდეგ ამოვიღე ფაილი და ჩავდე მოსახერხებელ დირექტორიაში. თქვენ არ შეგიძლიათ უბრალოდ.img ფაილის SD ბარათზე კოპირება/ჩასმა, თქვენ უნდა "დაწვათ" ბარათზე. თქვენ შეგიძლიათ გადმოწეროთ დამწვარი პროგრამა, როგორიცაა Etcher.io, რომ ადვილად გადაიტანოთ OS სურათი. მას შემდეგ, რაც.img ფაილი იყო ჩემს SD ბარათზე, ჩავსვი იგი Raspberry Pi- ში და მივეცი ძალა. დაახლოებით 50 წამის შემდეგ გავთიშე კაბელი და ამოვიღე SD ბარათი. შემდეგ ჩავდე SD ბარათი ჩემს კომპიუტერში და გადავედი "ჩატვირთვის" დირექტორიაში. გავხსენი ბლოკნოტი და შევინახე როგორც ცარიელი ფაილი სახელწოდებით "ssh" გაფართოების გარეშე. ასევე იყო ფაილი, რომელიც მე დავამატე სახელწოდებით "wpa_supplicant.conf" და ჩავდე ეს ტექსტი მასში:

ქსელი = {ssid = psk =}

შემდეგ შევინახე და ამოვიღე ბარათი და ჩავაბრუნე ჟოლოს Pi 3. ამან უნდა უზრუნველყოს SSH- ის გამოყენება და WiFi- თან დაკავშირება.

ნაბიჯი 3: კამერის მომზადება

კამერის მომზადება
კამერის მომზადება

ნაგულისხმევად, კამერა გამორთულია Pi- ზე, ასე რომ თქვენ უნდა გახსნათ ტერმინალის ტიპი sudo raspi-config მენიუს გასახსნელად. გადადით "ინტერფეისის პარამეტრებზე" და შემდეგ ჩართეთ კამერა. ახლა უბრალოდ აირჩიეთ "დასრულება" და ჩადეთ კამერის მოდულის ლენტი კაბელი Pi- ს სწორ ზონაში.

ნაბიჯი 4: პროგრამული უზრუნველყოფის ინსტალაცია

არსებობს რამდენიმე განსხვავებული პროგრამული უზრუნველყოფა, რომელსაც შეუძლია ვიდეოს სტრიმინგი, როგორიცაა vlc და motion, მაგრამ მე გადავწყვიტე mjpeg-streamer გამოვიყენო დაბალი შეყოვნებისა და მარტივი ინსტალაციის გამო. საიტის ინსტრუქციის თანახმად, გააკეთეთ git კლონი https://github.com/jacksonliam/mjpg-streamer.git საქაღალდეში, შემდეგ ჩაწერეთ sudo apt-get install cmake libjpeg8-dev საჭირო ბიბლიოთეკების დასაყენებლად. შეცვალეთ თქვენი დირექტორია გადმოწერილი საქაღალდეში და შემდეგ ჩაწერეთ make შემდეგ მოყვება sudo make install პროგრამული უზრუნველყოფის შესადგენად. ბოლოს შეიყვანეთ ექსპორტი LD_LIBRARY_PATH =. და მისი გასაშვებად აკრიფეთ.

ნაბიჯი 5: კონტროლერი

კონტროლერი
კონტროლერი
კონტროლერი
კონტროლერი

შემდეგ მოვიდა ნაწილი, თუ როგორ უნდა ვაკონტროლოთ Raspberry Pi WiFi– ზე, რადგან Bluetooth– ს აქვს ძალიან მცირე დიაპაზონი. მე გადავწყვიტე გამოვიყენო Flask სერვერი, რომელიც მუშაობს Raspberry PI- ზე და ESP8266 ESP12E მოდული, რომ მას გავუგზავნო მონაცემები. ESP8266– ს აქვს მხოლოდ ერთი ანალოგური შეყვანა, რაც იმას ნიშნავს, რომ მე ჯოისტიკი პირდაპირ ვერ გამოვიყენე, რადგან მას სჭირდება ორი ანალოგური შეყვანა. საუკეთესო ვარიანტი იყო ADS1115, რომელიც არის I2C მოწყობილობა, რომელიც კითხულობს ანალოგურ სიგნალებს 16 ბიტიანი გარჩევადობით. მე უბრალოდ SDA- ს ვუკავშირებ 4 -ს და SCL- ს 5 -ს, VCC- სა და GND- თან ერთად. ჯოისტიკის X ღერძი ADS1115- ზე უკავშირდება A0- ს, ხოლო Y ღერძი A1- ს. მაგრამ, მე შემთხვევით დავწვი ADS1115, ამიტომ მომიწია მომდევნო საუკეთესოს მიმართვა: ღილაკები! ახლა ჩემი კონფიგურაცია არის ESP8266 Sparkfun Thing Dev Board 3 ღილაკით- წინ, მარჯვნივ და მარცხნივ. ახლა, როდესაც ერთი დაჭერილია, ის აგზავნის მონაცემებს ბორბლების ამ მიმართულებით გადასაბრუნებლად.

ნაბიჯი 6: კოდი რობოტისთვის

კოდი რობოტისთვის
კოდი რობოტისთვის

მე შევიმუშავე წინა პროექტი, რომელიც იყენებდა Pi– ს GPIO PWM ბიბლიოთეკას json– ის საშუალებით ძრავების გასაკონტროლებლად, ამიტომ მე უბრალოდ ხელახლა განვაცხადე კოდი, რომ მის ნაცვლად მიეღო მონაცემები Flask აპლიკაციის საშუალებით. Flask არის პითონის ბიბლიოთეკა, რომელიც არსებითად აქცევს თქვენს Pi- ს ვებ სერვერად, რომელსაც შეუძლია მონაცემების გაგზავნა და მიღება. PWM– ის გამოყენებით, ძრავების კონტროლი შესაძლებელია უფრო დიდი სიზუსტით სატანკო დისკთან შედარებით. ეს ასევე ნიშნავს იმას, რომ რობოტს შეუძლია ცვლადი სიჩქარით და არა ფიქსირებული. ჩემი ფლაკონის აპლიკაცია კონფიგურირებულია ძრავების PWM შესაცვლელად, მას შემდეგ რაც მიიღებს მონაცემებს GET მოთხოვნიდან http– ით ESP12e– დან. ის ასევე იყენებს ქვეპროცესს. გახსენით ბიბლიოთეკა ვებ სტრიქონის სკრიპტის გასაშვებად ფონზე. მე დავამატე კოდი პროექტის გვერდზე, ასე რომ ყველაფერი რაც საჭიროა არის გადმოწერა.

ნაბიჯი 7: კონტროლერის კოდი

კოდი საკმაოდ მარტივი იყო, უბრალოდ წაკითხეთ 3 ქინძისთავიდან, გაუშვით ბმულის მიმართულების განსაზღვრის ზოგიერთი განაცხადი და საბოლოოდ გაგზავნეთ ეს მნიშვნელობები Raspberry Pi– ში. ESP8266 დაფის დამატება Arduino IDE– ს გააჩნია HTTPClient ბიბლიოთეკა, რომელიც ამუშავებს სათაურებს და აგზავნის მონაცემებს. Flask სერვერს სჭირდება მონაცემების მიღება POST ზარის საშუალებით, ამიტომ კოდი იწყებს კავშირს Raspberry Pi ვებ სერვერთან, შემდეგ ამატებს სათაურს იმ მონაცემებზე, რომლებიც აღნიშნავს, რომ ის JSON კოდირებულია და ბოლოს ის მონაცემებს აგზავნის JSON ობიექტის სახით რა მე დავამატე 40 ms დაგვიანებით, რათა თავიდან ავიცილოთ Raspberry Pi მონაცემებით გადატვირთვა.

ნაბიჯი 8: გაუშვით ჟოლოს ჯაშუში

ჟოლოს ჯაშუშის გაშვება
ჟოლოს ჯაშუშის გაშვება
ჟოლოს ჯაშუშის გაშვება
ჟოლოს ჯაშუშის გაშვება

ყველაფერი რაც საჭიროა არის sudo python.py აკრეფა! თქვენ უნდა ნახოთ კამერის განათება, ხოლო 8080 პორტით pi– ს ვებ – მისამართზე გადასვლისას ნაკადი უნდა იყოს ხილული. ახლა თქვენ შეგიძლიათ გამოიყენოთ კონტროლერი სახლის ნებისმიერ ადგილას და გქონდეთ ცოცხალი კვებაც.

გირჩევთ: