Სარჩევი:

შესავალი არდუინოში: 15 ნაბიჯი (სურათებით)
შესავალი არდუინოში: 15 ნაბიჯი (სურათებით)

ვიდეო: შესავალი არდუინოში: 15 ნაბიჯი (სურათებით)

ვიდეო: შესავალი არდუინოში: 15 ნაბიჯი (სურათებით)
ვიდეო: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, ივლისი
Anonim
შესავალი არდუინოში
შესავალი არდუინოში

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

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

ძირითადად, თუ არსებობს რაიმე, რაც კონტროლდება ელექტროენერგიით, Arduino– ს შეუძლია მასთან რაიმე სახის კავშირი. და მაშინაც კი, თუ ის არ კონტროლდება ელექტროენერგიით, თქვენ მაინც შეგიძლიათ გამოიყენოთ ის, რაც არის (როგორიცაა ძრავები და ელექტრომაგნიტები), მასთან დასაკავშირებლად.

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

ნაბიჯი 1: არდუინოს სხვადასხვა ტიპები

არდუინოს სხვადასხვა ტიპები
არდუინოს სხვადასხვა ტიპები
არდუინოს სხვადასხვა ტიპები
არდუინოს სხვადასხვა ტიპები
არდუინოს სხვადასხვა ტიპები
არდუინოს სხვადასხვა ტიპები

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

არდუინო უნო

Arduino– ს ყველაზე გავრცელებული ვერსია არის Arduino Uno. ეს დაფა არის ის, რაზეც ადამიანების უმეტესობა საუბრობს Arduino– ს მიმართვისას. მომდევნო ეტაპზე, ხდება მისი მახასიათებლების უფრო სრულყოფილი მიმოხილვა.

Arduino NG, Diecimila და Duemilanove (ძველი ვერსიები)

Arduino Uno პროდუქციის ხაზის ძველი ვერსიები შედგება NG, Diecimila და Duemilanove. მემკვიდრეობის დაფებთან დაკავშირებით მნიშვნელოვანია აღინიშნოს, რომ მათ არ აქვთ Arduino Uno– ს განსაკუთრებული მახასიათებლები. რამდენიმე ძირითადი განსხვავება:

  • Diecimila და NG იყენებენ ATMEGA168 ჩიპებს (განსხვავებით უფრო მძლავრი ATMEGA328– ისგან),
  • ორივე Diecimila და NG აქვს jumper შემდეგ USB პორტი და მოითხოვს ხელით შერჩევა ან USB ან ბატარეის.
  • Arduino NG მოითხოვს, რომ პროგრამის ატვირთვამდე რამდენიმე წამი დაიჭიროთ დაფაზე დანარჩენი ღილაკით.

Arduino Mega 2560

Arduino Mega 2560 არის Arduino ოჯახის მეორე ყველაზე გავრცელებული ვერსია. არდუინო მეგა არდუინო უნოს უფროსი ძმის მსგავსია. მას აქვს 256 KB მეხსიერება (8 -ჯერ მეტი ვიდრე Uno). მას ასევე ჰქონდა 54 შესასვლელი და გამომავალი ქინძი, რომელთაგან 16 არის ანალოგური ქინძისთავები, ხოლო 14 -ს შეუძლია PWM– ის გაკეთება. ამასთან, ყველა დამატებული ფუნქციონირება ხდება ოდნავ უფრო დიდი მიკროსქემის ფასად. ეს შეიძლება გახადოს თქვენი პროექტი უფრო ძლიერი, მაგრამ ასევე გახდის თქვენს პროექტს უფრო დიდს. გადახედეთ ოფიციალურ Arduino Mega 2560 გვერდს დამატებითი დეტალებისთვის.

Arduino Mega ADK

Arduino– ს ეს სპეციალიზებული ვერსია ძირითადად არის Arduino Mega, რომელიც სპეციალურად შექმნილია Android სმარტფონებთან ურთიერთობისთვის. ესეც უკვე ძველი ვერსიაა.

არდუინო იუნი

Arduino Yun იყენებს ATMega32U4 ჩიპს ATmega328- ის ნაცვლად. თუმცა, ის რაც მას ნამდვილად გამოარჩევს არის Atheros AR9331 მიკროპროცესორის დამატება. ეს დამატებითი ჩიპი საშუალებას აძლევს ამ დაფას გაუშვას Linux, ჩვეულებრივი Arduino ოპერაციული სისტემის გარდა. თუ ეს ყველაფერი არ იყო საკმარისი, მას ასევე აქვს ბორტზე wifi შესაძლებლობა. სხვა სიტყვებით რომ ვთქვათ, თქვენ შეგიძლიათ დაფის დაპროგრამება გააკეთოთ ისეთი რამ, როგორც სხვა Arduino– სთან ერთად, მაგრამ ასევე შეგიძლიათ შეხვიდეთ დაფის Linux– ის მხარეს, რათა დაუკავშირდეთ ინტერნეტს wifi– ს საშუალებით. არდუინოს მხარეს და ლინუქსის მხარეს შეუძლიათ ადვილად დაუკავშირდნენ ერთმანეთს წინ და უკან. ეს ხდის ამ დაფას უკიდურესად ძლიერ და მრავალმხრივ. მე ძლივს ვკაკუნებ ზედაპირზე, რისი გაკეთებაც შეგიძლიათ ამით, მაგრამ მეტი რომ გაიგოთ, გადახედეთ არდუინო იუნის ოფიციალურ გვერდს.

არდუინო ნანო

თუ გსურთ სტანდარტულ არდუინოს დაფაზე პატარა გახდეთ, არდუინო ნანო თქვენთვისაა! ზედაპირზე დამაგრებული ATmega328 ჩიპის საფუძველზე, Arduino– ს ეს ვერსია შემცირდა პატარა ნაკვალევზე, რომელსაც შეუძლია მოთავსდეს მჭიდრო სივრცეში. ის ასევე შეიძლება პირდაპირ ჩასვათ დაფაზე, რაც გაადვილებს პროტოტიპს.

არდუინო ლილი პედი

LilyPad განკუთვნილია ტარებადი და ელექტრონული ტექსტილის პროგრამებისთვის. ის გამიზნულია ქსოვილზე შეკერილი და სხვა საკერავ კომპონენტებთან დაკავშირებული გამტარი ძაფის გამოყენებით. ეს დაფა მოითხოვს სპეციალური FTDI-USB TTL სერიული პროგრამირების კაბელის გამოყენებას. დამატებითი ინფორმაციისთვის, Arduino LilyPad გვერდი არის ღირსეული საწყისი წერტილი.

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

ნაბიჯი 2: Arduino Uno მახასიათებლები

Arduino Uno მახასიათებლები
Arduino Uno მახასიათებლები

ზოგი ფიქრობს, რომ Arduino– ს მთელი დაფა არის მიკროკონტროლი, მაგრამ ეს არაზუსტია. Arduino დაფა სინამდვილეში არის სპეციალურად შექმნილი მიკროსქემის დაფა პროგრამირებისა და პროტოტიპისთვის Atmel მიკროკონტროლერებით.

არდუინოს დაფაზე სასიამოვნო ის არის, რომ ის შედარებით იაფია, პირდაპირ კომპიუტერის USB პორტშია ჩართული და მისი დაყენება და გამოყენება მკვდარია (სხვა განვითარების დაფებთან შედარებით).

Arduino Uno– ს ზოგიერთი ძირითადი მახასიათებელი მოიცავს:

  • ღია კოდის დიზაინი. მისი ღია კოდის უპირატესობა ის არის, რომ მას ჰყავს ხალხის დიდი ჯგუფი, რომელიც იყენებს მას და პრობლემების მოგვარებას. ეს აადვილებს ვიღაცის პოვნას, რომელიც დაგეხმარებათ თქვენი პროექტების გამართვაში.
  • მარტივი USB ინტერფეისი. დაფაზე არსებული ჩიპი ჩართულია პირდაპირ თქვენს USB პორტში და რეგისტრირდება თქვენს კომპიუტერში, როგორც ვირტუალური სერიული პორტი. ეს საშუალებას გაძლევთ დაუკავშირდეთ მას როგორც სერიული მოწყობილობა. ამ კონფიგურაციის სარგებელი ის არის, რომ სერიული კომუნიკაცია არის ძალიან მარტივი (და დროში გამოცდილი) პროტოკოლი, ხოლო USB მისი თანამედროვე კომპიუტერებთან დაკავშირება მართლაც მოსახერხებელია.
  • ძალიან მოსახერხებელი ენერგიის მართვა და ჩაშენებული ძაბვის რეგულირება. თქვენ შეგიძლიათ დაუკავშიროთ გარე ენერგიის წყარო 12 ვ -მდე და ის დაარეგულირებს მას როგორც 5 ვ, ასევე 3.3 ვ. ის ასევე შეიძლება იკვებებოდეს პირდაპირ USB პორტიდან გარე ენერგიის გარეშე.
  • ადვილად მოსაპოვებელი და ჭუჭყიანი იაფი, მიკროკონტროლერი "ტვინი". ATmega328 ჩიპი იყიდება დაახლოებით 2.88 დოლარად Digikey– ზე. მას აქვს უამრავი ულამაზესი ტექნიკური მახასიათებელი, როგორიცაა ტაიმერები, PWM ქინძისთავები, გარე და შიდა შეფერხებები და ძილის მრავალი რეჟიმი. დაწვრილებით იხილეთ ოფიციალური მონაცემთა ფურცელი.
  • 16 მეგაჰერციანი საათი. ეს ხდის მას არა ყველაზე სწრაფ მიკროკონტროლერს გარშემო, არამედ საკმარისად სწრაფს პროგრამების უმეტესობისთვის.
  • 32 კბ ფლეშ მეხსიერება თქვენი კოდის შესანახად.
  • 13 ციფრული ქინძისთავები და 6 ანალოგური ქინძისთავები. ეს ქინძისთავები საშუალებას გაძლევთ დაუკავშიროთ გარე ტექნიკა თქვენს Arduino– ს. ეს ქინძისთავები არის გასაღები Arduino– ს გამოთვლითი შესაძლებლობების რეალურ სამყაროში გაფართოებისთვის. უბრალოდ შეაერთეთ თქვენი მოწყობილობები და სენსორები იმ სოკეტებში, რომლებიც შეესაბამება თითოეულ ამ ქინძისთავს და თქვენ კარგად მიდიხართ.
  • ICSP კონექტორი USB პორტის გვერდის ავლით და Arduino– ს პირდაპირ სერიული მოწყობილობის დასაკავშირებლად. ეს პორტი აუცილებელია თქვენი ჩიპის ხელახალი ჩატვირთვის შემთხვევაში, თუ ის დაზიანებულია და თქვენს კომპიუტერს ვეღარ ესაუბრება.
  • ციფრული პინ 13-ზე მიმაგრებული ბორტზე არსებული LED, კოდის ადვილად გამართვის მიზნით.
  • და ბოლოს, მაგრამ არანაკლებ, ღილაკი პროგრამის ჩიპზე გადატვირთვისთვის.

Arduino Uno– ს ყველაფრის სრული მიმოხილვისთვის, დარწმუნდით, რომ შეამოწმეთ Arduino– ს ოფიციალური გვერდი.

ნაბიჯი 3: Arduino IDE

Arduino IDE
Arduino IDE

სანამ რამის გაკეთებას დაიწყებთ Arduino– ით, თქვენ უნდა გადმოწეროთ და დააინსტალიროთ Arduino IDE (ინტეგრირებული განვითარების გარემო). ამ მომენტიდან ჩვენ მოვიხსენიებთ Arduino IDE- ს, როგორც Arduino პროგრამისტს.

Arduino პროგრამისტი ემყარება Processing IDE- ს და იყენებს C და C ++ პროგრამირების ენების ვარიაციას.

თქვენ შეგიძლიათ იპოვოთ Arduino პროგრამისტის უახლესი ვერსია ამ გვერდზე.

ნაბიჯი 4: შეაერთეთ იგი

Შეაერთე
Შეაერთე

შეაერთეთ Arduino თქვენი კომპიუტერის USB პორტთან.

გთხოვთ გაითვალისწინოთ, რომ მიუხედავად იმისა, რომ Arduino ჩართულია თქვენს კომპიუტერში, ის არ არის ნამდვილი USB მოწყობილობა. დაფას აქვს სპეციალური ჩიპი, რომლის საშუალებითაც იგი გამოჩნდება თქვენს კომპიუტერში, როგორც ვირტუალური სერიული პორტი, როდესაც ის USB პორტშია ჩართული. ამიტომ მნიშვნელოვანია დაფის ჩართვა. როდესაც დაფა არ არის ჩართული, ვირტუალური სერიული პორტი, რომელზეც მუშაობს Arduino, არ იქნება (ვინაიდან მის შესახებ ყველა ინფორმაცია არდუინოს დაფაზეა).

ასევე კარგია იმის ცოდნა, რომ თითოეულ Arduino– ს აქვს უნიკალური ვირტუალური სერიული პორტის მისამართი. ეს ნიშნავს, რომ ყოველ ჯერზე, როდესაც თქვენს კომპიუტერში ჩართავთ სხვადასხვა Arduino დაფას, თქვენ დაგჭირდებათ სერიული პორტის ხელახალი კონფიგურაცია, რომელიც გამოიყენება.

Arduino Uno მოითხოვს მამრობითი USB A მამაკაცის USB B კაბელს.

ნაბიჯი 5: პარამეტრები

პარამეტრები
პარამეტრები
პარამეტრები
პარამეტრები

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

დაფის დასაყენებლად გადადით შემდეგზე:

ინსტრუმენტები დაფები

შეარჩიეთ დაფის ვერსია, რომელსაც იყენებთ. ვინაიდან მე მაქვს ჩართული Arduino Uno, მე აშკარად შევარჩიე "Arduino Uno".

სერიული პორტის დასაყენებლად გადადით შემდეგზე:

ინსტრუმენტები სერიული პორტი

შეარჩიეთ სერიული პორტი, რომელიც ასე გამოიყურება:

/dev/tty.usbmodem [შემთხვევითი რიცხვები]

ნაბიჯი 6: გაუშვით ესკიზი

გაუშვით ესკიზი
გაუშვით ესკიზი
გაუშვით ესკიზი
გაუშვით ესკიზი
გაუშვით ესკიზი
გაუშვით ესკიზი

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

იმისათვის, რომ LED იყოს მიბმული ციფრულ პინ 13 -ზე, რომ აინთოს და გამორთოს, მოდით ჩავტვირთოთ ციმციმის მაგალითი.

მოციმციმე მაგალითი შეგიძლიათ იხილოთ აქ:

ფაილების მაგალითები საფუძვლები მოციმციმე

მოციმციმე მაგალითი ძირითადად ადგენს pin D13- ს, როგორც გამომავალს და შემდეგ ციმციმებს სატესტო LED- ს არდუინოს დაფაზე ყოველ წამს ჩართვასა და გამორთვაში.

როდესაც თვალის დახამხამების მაგალითი ღიაა, ის შეიძლება დაინსტალირდეს ATMEGA328 ჩიპზე ატვირთვის ღილაკზე დაჭერით, რომელიც გამოიყურება ისრის მსგავსად, რომელიც მიუთითებს მარჯვნივ.

მიაქციეთ ყურადღება, რომ ზედაპირის დამონტაჟების სტატუსის LED, რომელიც დაკავშირებულია Arduino– ს 13 – ზე, დაიწყებს მოციმციმებას. თქვენ შეგიძლიათ შეცვალოთ მოციმციმე სიხშირე შეფერხების სიგრძის შეცვლით და ატვირთვის ღილაკის ხელახლა დაჭერით.

ნაბიჯი 7: სერიული მონიტორი

სერიული მონიტორი
სერიული მონიტორი
სერიული მონიტორი
სერიული მონიტორი

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

მაგალითად, შეაერთეთ პოტენომეტრის ცენტრალური გამწმენდი (შუა ქინძი) A0- თან, ხოლო გარე ქინძისთავები, შესაბამისად, 5 ვ და მიწასთან. შემდეგი ატვირთეთ ქვემოთ ნაჩვენები ესკიზი:

ფაილის მაგალითები 1. ძირითადი AnalogReadSerial

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

რიცხვები იქნება 0 -დან 1023 -მდე. ამის მიზეზი ის არის, რომ ანალოგური პინი გარდაქმნის ძაბვას 0 -დან 5V- მდე გონივრულ რიცხვზე.

ნაბიჯი 8: ციფრული შეყვანა

ციფრული
ციფრული

Arduino– ს აქვს ორი განსხვავებული ტიპის შეყვანის ქინძისთავები, ეს არის ანალოგური და ციფრული.

დასაწყისისთვის, მოდით შევხედოთ ციფრული შეყვანის ქინძისთავებს.

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

  • მაღალი ან დაბალი
  • 1 ან 0
  • 5V ან 0V.

ეს შეყვანა ჩვეულებრივ გამოიყენება ძაბვის არსებობის გასაზრდელად, როდესაც გადამრთველი იხსნება ან იხურება.

ციფრული საშუალებები ასევე შეიძლება გამოყენებულ იქნას როგორც უთვალავი ციფრული საკომუნიკაციო პროტოკოლის საფუძველი. 5V (HIGH) პულსის ან 0V (LOW) პულსის შექმნით, თქვენ შეგიძლიათ შექმნათ ორობითი სიგნალი, ყველა გამოთვლის საფუძველი. ეს სასარგებლოა ციფრულ სენსორებთან საუბრისას, როგორიცაა PING ულტრაბგერითი სენსორი, ან სხვა მოწყობილობებთან კომუნიკაციისთვის.

ციფრული შეყვანის მარტივი მაგალითისთვის, შეაერთეთ გადართვა ციფრული პინიდან 2V– მდე 5V– მდე, 10K რეზისტორი ** ციფრული pin 2 – დან მიწაზე და გაუშვით შემდეგი კოდი:

ფაილის მაგალითები 2. ციფრული ღილაკი

** 10K რეზისტორს ეწოდება გასაშლელი რეზისტორი, რადგან ის აკავშირებს ციფრულ პინს მიწასთან, როდესაც გადამრთველი არ არის დაჭერილი. როდესაც გადამრთველი დაჭერილია, გადამრთველში არსებულ ელექტრულ კავშირებს აქვთ ნაკლები წინააღმდეგობა ვიდრე რეზისტორი და ელექტროენერგია აღარ უკავშირდება მიწას. ამის ნაცვლად, ელექტროენერგია მიედინება 5V და ციფრულ პინს შორის. ეს იმიტომ ხდება, რომ ელექტროენერგია ყოველთვის ირჩევს უმცირესი წინააღმდეგობის გზას. ამის შესახებ მეტის გასაგებად ეწვიეთ ციფრული ქინძისთავების გვერდს.

ნაბიჯი 9: ანალოგი

ანალოგი In
ანალოგი In

ციფრული შეყვანის ქინძის გარდა, Arduino ასევე გამოირჩევა არაერთი ანალოგური შეყვანის ქინძისთავით.

ანალოგური შეყვანის ქინძისთავები იღებენ ანალოგურ სიგნალს და ასრულებენ 10-ბიტიან ანალოგურ-ციფრულ (ADC) გარდაქმნას, რომ გადააქციონ რიცხვში 0-დან 1023-მდე (4.9 მვ საფეხურები).

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

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

ნაბიჯი 10: ციფრული გამოსვლა

ციფრული გამოსვლა
ციფრული გამოსვლა

ციფრული გამოსვლის პინი შეიძლება იყოს მაღალი (5 ვ) ან დაბალი (0 ვ). ეს საშუალებას გაძლევთ ჩართოთ და გამორთოთ საგნები.

საგნების ჩართვისა და გამორთვის გარდა (და LED- ების მოციმციმე), გამომავალი ეს ფორმა მოსახერხებელია რიგი პროგრამებისთვის.

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

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

თუ თქვენ მიჰყევით მაგალითს მე -6 ნაბიჯში LED- ის მოციმციმედ, თქვენ უკვე სცადეთ ციფრული გამომავალი პინის გამოყენება.

ნაბიჯი 11: ანალოგური გამოსვლა

ანალოგი გარეთ
ანალოგი გარეთ

როგორც უკვე აღვნიშნეთ, Arduino– ს აქვს მრავალი სპეციალური ფუნქცია. ერთ-ერთი ასეთი განსაკუთრებული ფუნქციაა პულსის სიგანის მოდულაცია, რაც არდუინოს შეუძლია შექმნას ანალოგის მსგავსი გამომავალი.

პულსის სიგანის მოდულაცია - ან მოკლედ PWM - მუშაობს PWM pin– ის სწრაფად გადაქცევით მაღალი (5V) და დაბალი (0V) ანალოგური სიგნალის სიმულაციისთვის. მაგალითად, თუ თქვენ სწრაფად დაახამხამებთ LED- ს საკმარისად სწრაფად (თითოეული დაახლოებით ხუთი მილიწამი), როგორც ჩანს, ის საშუალო სიკაშკაშეს ნიშნავს და მხოლოდ ენერგიის ნახევარს იღებს. ალტერნატიულად, თუ ის 1 მილიწამს აციმციმებს და შემდეგ 9 მილიწამს დახუჭავს, LED გამოჩნდება 1/10 ნათელი და მხოლოდ 1/10 ძაბვას მიიღებს.

PWM არის გასაღები მრავალი პროგრამისთვის, მათ შორის ხმის ამოღების, სინათლის სიკაშკაშის კონტროლისა და ძრავების სიჩქარის კონტროლის ჩათვლით.

უფრო სიღრმისეული ახსნისთვის, გაეცანით PWM გვერდის საიდუმლოებებს.

PWM- ის გამოსასწორებლად, დაუკავშირეთ LED და 220 ohm რეზისტორი ციფრულ პინ 9 -ს, სერიულად მიწას. გაუშვით შემდეგი მაგალითი კოდი:

ფაილის მაგალითები 3. ანალოგური ქრებოდა

ნაბიჯი 12: ჩაწერეთ თქვენი საკუთარი კოდი

ჩაწერეთ თქვენი საკუთარი კოდი
ჩაწერეთ თქვენი საკუთარი კოდი

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

რამდენიმე მნიშვნელოვანი რამ, რაც უნდა გახსოვდეთ საკუთარი კოდის წერისას:

არდუინოს პროგრამას ეწოდება ესკიზი

არდუინოს ესკიზის ყველა კოდი დამუშავებულია ზემოდან ქვემოდან

არდუინოს ესკიზები ჩვეულებრივ იყოფა ხუთ ნაწილად

  1. ესკიზი ჩვეულებრივ იწყება სათაურით, რომელიც განმარტავს რას აკეთებს ესკიზი და ვინ დაწერა.
  2. შემდეგი, ის ჩვეულებრივ განსაზღვრავს გლობალურ ცვლადებს. ხშირად, ეს არის ის ადგილი, სადაც მუდმივი სახელებია მინიჭებული არდუინოს სხვადასხვა ქინძისთავებზე.
  3. საწყისი ცვლადების დაყენების შემდეგ, Arduino იწყებს დაყენების რუტინას. კონფიგურაციის ფუნქციაში ჩვენ ვადგენთ ცვლადების საწყის მდგომარეობას საჭიროების შემთხვევაში და ვაწარმოებთ ნებისმიერ წინასწარ კოდს, რომლის გაშვებაც მხოლოდ ერთხელ გვინდა. აქ იწყება სერიული კომუნიკაცია, რაც საჭიროა სერიული მონიტორის გასაშვებად.
  4. დაყენების ფუნქციიდან ჩვენ მივდივართ მარყუჟის რუტინაზე. ეს არის ესკიზის მთავარი რუტინა. ეს არ არის მხოლოდ იქ, სადაც მიდის თქვენი ძირითადი კოდი, არამედ ის შესრულდება უსასრულოდ, სანამ ესკიზი განაგრძობს მუშაობას.
  5. მარყუჟის რუტინის ქვემოთ, ხშირად სხვა ფუნქციებია ჩამოთვლილი. ეს ფუნქციები მომხმარებლის მიერ არის განსაზღვრული და გააქტიურებულია მხოლოდ მაშინ, როდესაც გამოიძახება კონფიგურაციისა და მარყუჟის რუტინაში. როდესაც ეს ფუნქციები იძახება, არდუინო ამუშავებს ფუნქციის ყველა კოდს ზემოდან ქვემოდან და შემდეგ ბრუნდება ესკიზის მომდევნო ხაზზე, სადაც ის შეჩერდა ფუნქციის გამოძახებისას. ფუნქციები კარგია, რადგან ისინი საშუალებას გაძლევთ აწარმოოთ სტანდარტული რუტინები - უსასრულოდ - კოდის ერთი და იგივე ხაზების ჩაწერის გარეშე. თქვენ უბრალოდ შეგიძლიათ რამდენჯერმე დარეკოთ ფუნქცია და ეს გაათავისუფლებს მეხსიერებას ჩიპზე, რადგან ფუნქციის რუტინა მხოლოდ ერთხელ არის დაწერილი. ასევე აადვილებს კოდის წაკითხვას. იმისათვის, რომ გაიგოთ როგორ შექმნათ თქვენი საკუთარი ფუნქციები, გადახედეთ ამ გვერდს.

ყოველივე ამის შემდეგ, ესკიზის მხოლოდ ორი ნაწილი, რომელიც სავალდებულოა, არის Setup და Loop რუტინები

კოდი უნდა იყოს დაწერილი არდუინოს ენაზე, რომელიც უხეშად ემყარება C

არდუინოს ენაზე დაწერილი თითქმის ყველა განცხადება უნდა დასრულდეს a;

პირობით პირობებს (მაგალითად, თუ განცხადებები და მარყუჟებისათვის) არ სჭირდება a;

პირობით პირობებს აქვთ საკუთარი წესები და შეგიძლიათ იხილოთ არტუინოს ენის გვერდზე "საკონტროლო სტრუქტურები"

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

Კარგი! მოდით ვთქვათ, რომ ჩვენ გვინდა დავწეროთ კოდი, რომელიც კითხულობს ფოტო უჯრედს, რომელიც დაკავშირებულია პინ A0– სთან და გამოვიყენოთ ის კითხვა, რომელსაც ვიღებთ ფოტო უჯრედიდან, რათა გავაკონტროლოთ LED D– ის სიკაშკაშე, რომელიც დაკავშირებულია პინ D9– თან.

პირველ რიგში, ჩვენ გვინდა გავხსნათ BareMinimum ესკიზი, რომელიც შეგიძლიათ იხილოთ აქ:

ფაილის მაგალითები 1. ძირითადი BareMinimum

BareMinimum Sketch ასე უნდა გამოიყურებოდეს:

void setup () {

// განათავსეთ თქვენი კონფიგურაციის კოდი აქ, ერთხელ გასაშვებად:} void loop () {// განათავსეთ თქვენი მთავარი კოდი აქ, განმეორებით გასაშვებად:} შემდეგი, მოდით ჩავწეროთ სათაური კოდზე, რათა სხვა ადამიანებმა იცოდნენ რას ვქმნით, რატომ და რა პირობებით

/*

LED Dimmer by Genius Arduino Programmer 2012 აკონტროლებს LED სიკაშკაშეს pin D9- ზე, რომელიც დაფუძნებულია ფოტოს უჯრედის AIN- ზე წაკითხვის საფუძველზე. ეს კოდი არის საზოგადოებრივ დომენში */ void setup () {// განათავსეთ თქვენი დაყენების კოდი აქ გასაშვებად ერთხელ:} void loop () {// განათავსეთ თქვენი მთავარი კოდი აქ, განმეორებით გასაშვებად:} მას შემდეგ რაც ეს ყველაფერი კვადრატად დაშორდება, მოდით განვსაზღვროთ პინის სახელები და შევქმნათ ცვლადები

/*

LED Dimmer by Genius Arduino Programmer 2012 აკონტროლებს LED სიკაშკაშეს pin D9- ზე, რომელიც დაფუძნებულია ფოტოს უჯრედის PIN- ზე წაკითხვის საფუძველზე. ეს კოდი არის საზოგადოებრივ დომენში */ // სახელი ანალოგური pin 0 მუდმივი სახელი const int analogInPin = A0; // ციფრული პინი 9 დაასახელეთ მუდმივი სახელი const int LEDPin = 9; // ცვლადი უჯრედის წასაკითხად int photocell; void setup () {// განათავსეთ თქვენი კონფიგურაციის კოდი აქ, ერთხელ გასაშვებად:} void loop () {// განათავსეთ თქვენი მთავარი კოდი აქ, განმეორებით გასაშვებად:} ახლა, როდესაც ცვლადები და პინის სახელები დადგენილია, მოდით დავწეროთ რეალური კოდი

/*

LED Dimmer by Genius Arduino Programmer 2012 აკონტროლებს LED სიკაშკაშეს pin D9- ზე, რომელიც დაფუძნებულია ფოტოს უჯრედის PIN- ზე წაკითხვის საფუძველზე. ეს კოდი არის საზოგადოებრივ დომენში */ // სახელი ანალოგური pin 0 მუდმივი სახელი const int analogInPin = A0; // ციფრული პინი 9 დაასახელეთ მუდმივი სახელი const int LEDPin = 9; // ცვლადი უჯრედის წასაკითხად int photocell; void setup () {// აქ ახლა არაფერი // აკონტროლეთ LED პინი ფოტოელექტრონული analogWrite (LEDPin, photocell) მიერ წაკითხული მნიშვნელობის გამოყენებით; // შეაჩერე კოდი 1/10 წამი // 1 წამი = 1000 შეფერხება (100); } თუ გვინდა დავინახოთ რა რიცხვებს კითხულობს ანალოგური პინი რეალურად ფოტოელემენტიდან, დაგვჭირდება სერიული მონიტორის გამოყენება. მოდით გავააქტიუროთ სერიული პორტი და გამოვიტანოთ ეს რიცხვები

/*

LED Dimmer by Genius Arduino Programmer 2012 აკონტროლებს LED სიკაშკაშეს pin D9- ზე, რომელიც დაფუძნებულია ფოტოს უჯრედის PIN- ზე წაკითხვის საფუძველზე. ეს კოდი არის საზოგადოებრივ დომენში */ // სახელი ანალოგური pin 0 მუდმივი სახელი const int analogInPin = A0; // ციფრული პინი 9 დაასახელეთ მუდმივი სახელი const int LEDPin = 9; // ცვლადი უჯრედის წასაკითხად int photocell; void setup () {Serial.begin (9600); } void loop () {// წაიკითხეთ ანალოგი pin- ში და დააყენეთ კითხვა უჯრედის ცვლადი photocell = analogRead (analogInPin); // დაბეჭდეთ ფოტო უჯრედის მნიშვნელობა სერიულ მონიტორზე Serial.print ("Photocell ="); Serial.println (ფოტოცელი); // აკონტროლეთ LED პინი ფოტოელექტრონული analogWrite (LEDPin, photocell) მიერ წაკითხული მნიშვნელობის გამოყენებით; // შეაჩერე კოდი 1/10 წამი // 1 წამი = 1000 შეფერხება (100); }კოდის ფორმულირების შესახებ დამატებითი ინფორმაციისათვის ეწვიეთ ფონდების გვერდს. თუ გჭირდებათ დახმარება არდუინოს ენაზე, მაშინ ენის გვერდი თქვენთვისაა.

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

ნაბიჯი 13: ფარები

ფარები
ფარები

Shields არის გაფართოების apdapter დაფები, რომლებიც ჩართულია Arduino Uno– ს თავზე და აძლევს მას განსაკუთრებულ ფუნქციებს.

მას შემდეგ, რაც Arduino არის ღია ტექნიკა, ყველას, ვისაც აქვს მიდრეკილება, თავისუფალია გააკეთოს Arduino ფარი ნებისმიერი ამოცანის შესასრულებლად. ამის გამო, ველურ ბუნებაში არდუინოს ფარის უთვალავი რაოდენობაა. Arduino– ს სათამაშო მოედანზე შეგიძლიათ იპოვოთ Arduino ფარების მზარდი სია. გაითვალისწინეთ, რომ უფრო მეტი ფარი იქნება ვიდრე თქვენ ნახავთ ამ გვერდზე (როგორც ყოველთვის, Google არის თქვენი მეგობარი).

Arduino ფარის შესაძლებლობების მცირე გაგების მიზნით, გადახედეთ ამ გაკვეთილებს, თუ როგორ გამოიყენოთ სამი ოფიციალური Arduino ფარი:

  • უკაბელო SD ფარი
  • Ethernet ფარი
  • საავტომობილო ფარი

ნაბიჯი 14: გარე წრის შექმნა

გარე წრის შექმნა
გარე წრის შექმნა

როდესაც თქვენი პროექტები უფრო რთულდება, თქვენ მოგინდებათ შექმნათ თქვენი საკუთარი სქემები Arduino– სთან ინტერფეისისათვის. მიუხედავად იმისა, რომ თქვენ არ ისწავლით ელექტრონიკას ერთი ღამით, ინტერნეტი არის დაუჯერებელი რესურსი ელექტრონული ცოდნისა და წრიული დიაგრამებისთვის.

ელექტრონიკის დასაწყებად ეწვიეთ Basic Electronics Instructable.

ნაბიჯი 15: მიღმა

გადის იქით
გადის იქით

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

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

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

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

Ის არის. Შენი თავი შენ გეკუთვნის.

წარმატებებს გისურვებთ და ბედნიერ გარჩევას!

გამოსახულება
გამოსახულება

თქვენთვის ეს სასარგებლო, სახალისო ან გასართობი აღმოჩნდა? მიყევით @madeineuphoria- ს, რომ ნახოთ ჩემი უახლესი პროექტები.

გირჩევთ: