Სარჩევი:

არდუინოზე დაფუძნებული რობოტის სინათლის შემსრულებელი: 5 ნაბიჯი
არდუინოზე დაფუძნებული რობოტის სინათლის შემსრულებელი: 5 ნაბიჯი

ვიდეო: არდუინოზე დაფუძნებული რობოტის სინათლის შემსრულებელი: 5 ნაბიჯი

ვიდეო: არდუინოზე დაფუძნებული რობოტის სინათლის შემსრულებელი: 5 ნაბიჯი
ვიდეო: 1. რა არის Arduino? როგორ მუშაობს კომპიუტერი? 2024, ნოემბერი
Anonim
ართუინოზე დაფუძნებული რობოტის მსუბუქი მოცილება და თავიდან აცილება
ართუინოზე დაფუძნებული რობოტის მსუბუქი მოცილება და თავიდან აცილება

ეს არის მარტივი პროექტი, რომელიც მიჰყვება ან თავიდან აიცილებს შუქს.

მე გავაკეთე ეს სიმულაცია Proteus 8.6 პროში. საჭირო კომპონენტები: -1) Arduino uno.

2) 3 LDR.

3) 2 DC Gear Motors.4) ერთი სერვო.5) სამი 1k რეზისტორი.6) ერთი H-Bridge l290D7) ერთი ჩართვა და გამორთვა გადართვა [პროგრამის მდგომარეობის შეცვლისათვის]

8) 9 ვ და 5 ვ ბატარეა

ნაბიჯი 1: არდუნიოს კოდი

არდუინოს კოდი შეცვლილია ცოტა ხნით -თარიღი 2016 წლის 23 თებერვალი]

ეს კოდი არის ძალიან კომენტირებული, მე არ მინდა ახსნა, მაგრამ თუ რაიმე დახმარება გჭირდებათ თავისუფლად დამიკავშირდით მისამართზე ([email protected])

შენიშვნა: -მე ვიყენებ ორ პირობას ამ პროგრამაში 1st Light After.2-ე სინათლის თავიდან აცილების მიზნით.

რამდენადაც ეს პირობები დაკმაყოფილებულია რობოტი მიჰყვება ან მოერიდება სინათლეს. [ეს არის LDR- ის მინიმალური ღირებულება, რომელსაც მე ვირჩევ. ნორმალურ შუქზე მისი დიაპაზონი 80 -დან 95 -მდეა, მაგრამ როდესაც მისი ინტენსივობა იზრდება უფრო და უფრო მეტი ძაბვა იწვევს მას, როდესაც ის მუშაობს ძაბვის გამყოფის პრინციპზე int a = 400; // ტოლერანტობის მნიშვნელობა]

ნაბიჯი 2: Proteus ფაილები

Arduino ბიბლიოთეკისთვის გადმოწერეთ ამ ბმულიდან

ნაბიჯი 3: როგორ მუშაობს თქვენი H- ხიდი

როგორ მუშაობს თქვენი H- ხიდი
როგორ მუშაობს თქვენი H- ხიდი
როგორ მუშაობს თქვენი H- ხიდი
როგორ მუშაობს თქვენი H- ხიდი

L293NE/SN754410 არის ძალიან ძირითადი H- ხიდი. მას აქვს ორი ხიდი, ერთი ჩიპის მარცხენა მხარეს და ერთი მარჯვნივ და შეუძლია გააკონტროლოს 2 ძრავა. მას შეუძლია მართოს 1 ამპრამდე დენი და იმუშაოს 4.5V– დან 36V– მდე. მცირე DC ძრავას, რომელსაც თქვენ იყენებთ ამ ლაბორატორიაში, შეუძლია უსაფრთხოდ იმუშაოს დაბალი ძაბვისგან, ასე რომ, ეს H ხიდი კარგად იმუშავებს. H- ხიდს აქვს შემდეგი ქინძისთავები და მახასიათებლები: Pin 1 (1, 2EN) ააქტიურებს და აფერხებს ჩვენს ძრავას, არის თუ არა მაღალი ან დაბალი Pin 2 (1A) არის ლოგიკური პინი ჩვენი ძრავისთვის (შეყვანა არის მაღალი ან დაბალი) Pin 3 (1Y) არის ერთ-ერთი საავტომობილო ტერმინალისთვის Pin 4-5 არის მიწისთვის Pin 6 (2Y) არის სხვა საავტომობილო ტერმინალისთვის Pin 7 (2A) არის ლოგიკური პინი ჩვენი ძრავისთვის (შეყვანა არის მაღალი ან დაბალი) Pin 8 (VCC2) არის ძრავა ჩვენი ძრავისთვის, მას უნდა მიეცეს თქვენი ძრავის რეიტინგული ძაბვა Pin 9-11 არ არის დაკავშირებული, რადგან თქვენ იყენებთ მხოლოდ ერთ ძრავას ამ ლაბორატორიაში Pin 12-13 არის მიწაზე Pin 14-15 არის დაუკავშირებელი Pin 16 (VCC1) არის დაკავშირებულია 5V. ზემოთ არის H- ხიდის დიაგრამა და რომელი ქინძისთავები აკეთებენ რას ჩვენს მაგალითში. დიაგრამაში არის სიმართლის ცხრილი, რომელიც მიუთითებს იმაზე, თუ როგორ იმუშავებს ძრავა ლოგიკური ქინძისთავების მდგომარეობის მიხედვით (რომლებიც დაყენებულია ჩვენი არდუინოს მიერ).

ამ პროექტში ჩართვის პინი უკავშირდება თქვენს Arduino– ს ციფრულ პინს, ასე რომ თქვენ შეგიძლიათ გააგზავნოთ ის მაღალი ან დაბალი და ჩართოთ ან გამორთოთ ძრავა. საავტომობილო ლოგიკის ქინძისთავები ასევე დაკავშირებულია თქვენს Arduino– ს დანიშნულ ციფრულ პინებთან, ასე რომ თქვენ შეგიძლიათ გააგზავნოთ HIGH და LOW, რომ ძრავა გადატრიალდეს ერთი მიმართულებით, ან LOW და HIGH, რომ ის სხვა მიმართულებით იქცეს. ძრავის მიწოდების ძაბვა უკავშირდება ძრავის ძაბვის წყაროს, რომელიც ჩვეულებრივ გარე კვების წყაროა. თუ თქვენს ძრავას შეუძლია იმუშაოს 5V და 500mA– ზე ნაკლები, შეგიძლიათ გამოიყენოთ Arduino– ს 5V გამომავალი. ძრავების უმეტესობა მოითხოვს უფრო მაღალ ძაბვას და უფრო მაღალ დენს, ვიდრე ეს, ასე რომ თქვენ დაგჭირდებათ გარე კვების წყარო.

შეაერთეთ ძრავა H- ხიდთან დააკავშირეთ ძრავა H- ხიდთან, როგორც ეს ნაჩვენებია მე –2 სურათზე.

ან, თუ თქვენ იყენებთ გარე კვების ბლოკს Arduino– სთვის, შეგიძლიათ გამოიყენოთ Vin pin.

ნაბიჯი 4: როგორ მუშაობს LDR

ახლა პირველი რაც შეიძლება დამატებით ახსნას საჭიროებს არის სინათლისგან დამოუკიდებელი რეზისტორების გამოყენება. სინათლისგან დამოუკიდებელი რეზისტორები (ან LDR) არის რეზისტორები, რომელთა მნიშვნელობა იცვლება გარე შუქის რაოდენობის მიხედვით, მაგრამ როგორ შეგვიძლია აღმოვაჩინოთ წინააღმდეგობა არდუინოსთან? თქვენ ნამდვილად არ შეგიძლიათ, მაგრამ თქვენ შეგიძლიათ აღმოაჩინოთ ძაბვის დონე ანალოგური ქინძისთავების გამოყენებით, რომელთა გაზომვაც შესაძლებელია (ძირითადი გამოყენებისას) 0-5 ვ-მდე. ახლა თქვენ შეიძლება გკითხოთ: "როგორ გადავაქციოთ წინააღმდეგობის მნიშვნელობები ძაბვის ცვლილებად?", ეს მარტივია, ჩვენ ვქმნით ძაბვის გამყოფს. ძაბვის გამყოფი იღებს ძაბვას და შემდეგ გამოსცემს ამ ძაბვის ნაწილს პროპორციულად შეყვანის ძაბვისა და გამოყენებული რეზისტორების ორი მნიშვნელობის თანაფარდობისა. განტოლება რომლისთვისაც არის:

გამომავალი ძაბვა = შეყვანის ძაბვა * (R2 / (R1 + R2)) სადაც R1 არის პირველი რეზისტორის მნიშვნელობა და R2 არის მეორის მნიშვნელობა.

ახლა ეს კვლავ ბადებს კითხვას "მაგრამ რა წინააღმდეგობის ღირებულებები აქვს LDR?", კარგი კითხვა. რაც უფრო ნაკლებია გარემოს შუქი, მით უფრო მაღალია წინააღმდეგობა, უფრო მეტი შუქი ნიშნავს დაბალ წინააღმდეგობას. ახლა კონკრეტული LDR– ისთვის მე გამოვიყენე მათი წინააღმდეგობის დიაპაზონი 200 - 10 კილო ოჰმ -მდე, მაგრამ ეს იცვლება სხვადასხვაზე, ასე რომ დარწმუნდით, რომ იყიდეთ სად იყიდეთ ისინი და ეცადეთ იპოვოთ მონაცემთა ფურცელი ან რაიმე სახის. ახლა ამ საქმე R1 რეალურად არის ჩვენი LDR, მოდით დავუბრუნოთ ეს განტოლება და გავაკეთოთ მათემატიკური e-magic (მათემატიკური ელექტრული მაგია). ჯერ ჩვენ უნდა გადავაქციოთ ეს კილო ohm მნიშვნელობები ohms: 200 kilo-ohms = 200, 000 ohms 10 kilo-ohms = 10, 000 ohms ასე რომ ვიპოვოთ რა არის გამომავალი ძაბვა როდესაც ჩვენ ვართ შავი ფერის ჩავრთავთ შემდეგ რიცხვებს: 5 * (10000 / (200000 + 10000)) შეყვანის არის 5V რადგან ეს არის ის რასაც ჩვენ ვიღებთ არდუინოდან. ზემოთ მოცემულია 0.24V (დამრგვალებულია). ახლა ჩვენ ვხვდებით რა არის გამომავალი ძაბვა პიკის სიკაშკაშეში შემდეგი რიცხვების გამოყენებით: 5 * (10000 / (10000 + 10000)) და ეს ზუსტად გვაძლევს 2.5 ვ. ეს არის ძაბვის მნიშვნელობები, რომლებშიც ჩვენ ვაპირებთ არდუინოს ანალოგიურ ქინძისთავებში მოხვედრას, მაგრამ ეს არ არის ის მნიშვნელობები, რაც გამოჩნდება პროგრამაში, "მაგრამ რატომ?" შეიძლება გკითხოთ. Arduino იყენებს ანალოგურ ციფრულ ჩიპს, რომელიც ანალოგიურ ძაბვას გარდაქმნის გამოსაყენებელ ციფრულ მონაცემებად. არდუინოს ციფრული ქინძისთავებისგან განსხვავებით, რომელთაც შეუძლიათ წაიკითხონ მხოლოდ მაღალი ან დაბალი მდგომარეობა 0 და 5 ვ ანალოგურ ქინძისთავებს შეუძლიათ წაიკითხონ 0-5 ვ-დან და გადააკეთონ ეს 0-1023 რიცხვის დიაპაზონში. ახლა კიდევ რამდენიმე მათემატიკური ელექტრონული მაგია რა ჩვენ შეგვიძლია რეალურად გამოვთვალოთ რა მნიშვნელობებს წაიკითხავს არდუინო.

რადგან ეს იქნება ხაზოვანი ფუნქცია ჩვენ შეგვიძლია გამოვიყენოთ შემდეგი ფორმულა: Y = mX + C სად; Y = ციფრული მნიშვნელობა სად; m = ფერდობზე, (აწევა / გაშვება), (ციფრული მნიშვნელობა / ანალოგური მნიშვნელობა) სად; C ინტერპრეტაცია Y არის 0, რაც გვაძლევს: Y = mXm = 1023 /5 = 204.6 ამიტომ: ციფრული მნიშვნელობა = 204.6 * ანალოგური მნიშვნელობა პიკის სიკაშკაშეში იქნება: 204.6 * 2.5 რაც იძლევა დაახლოებით 511. ახლა ორ მათგანს ორ ანალოგურ ქინძისთავზე შეგვიძლია შევქმნათ ორი მთელი ცვლადი, რომ შევინახოთ მათი მნიშვნელობები ორი და შევადაროთ ოპერატორები, რომ ნახოთ რომელია ყველაზე დაბალი მნიშვნელობით, რობოტის ამ მიმართულებით შემობრუნება.

გირჩევთ: