Სარჩევი:

Bluetooth- ჩართული პლანეტარიუმი/ორრერი: 13 ნაბიჯი (სურათებით)
Bluetooth- ჩართული პლანეტარიუმი/ორრერი: 13 ნაბიჯი (სურათებით)

ვიდეო: Bluetooth- ჩართული პლანეტარიუმი/ორრერი: 13 ნაბიჯი (სურათებით)

ვიდეო: Bluetooth- ჩართული პლანეტარიუმი/ორრერი: 13 ნაბიჯი (სურათებით)
ვიდეო: როგორ ჩავრთოთ Bluetooth Audio 2009-2011 Mercede-ზე 2024, ივლისი
Anonim
Bluetooth- ჩართული პლანეტარიუმი/ორერი
Bluetooth- ჩართული პლანეტარიუმი/ორერი

ეს ინსტრუქცია შეიქმნა სამხრეთ ფლორიდის უნივერსიტეტის მაკიაჟის პროექტის მოთხოვნის შესასრულებლად (www.makecourse.com).

ეს არის ჩემი 3 პლანეტა პლანეტარიუმი/ორერი. იგი დაიწყო როგორც სემესტრული პროექტი Makecourse– ისთვის, მაგრამ როდესაც სემესტრის დასასრული შემოვიდა, ის გადაიქცა უაღრესად ძვირფას სასწავლო გამოცდილებად. მე არა მხოლოდ ვისწავლე მიკროკონტროლერების საფუძვლები, არამედ მან ბევრი საინტერესო რამ მასწავლა C და C ++, Android პლატფორმის, შედუღების და ზოგადად ელექტრონიკის შესახებ.

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

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

თუ გსურთ გადახვიდეთ კოდზე, ყველაფერი GitHub– ზეა. Arduino კოდი აქ არის და Android კოდი აქ არის.

ნაბიჯი 1: ნაწილები და ინსტრუმენტები

ფიზიკური ნაწილები

  • 1 DC -47P DC სერიის მძიმე ელექტრონიკის დანართი - $ 9.58
  • 0.08 "(2 მმ) აკრილის/PMMA ფურცელი, მინიმუმ 6" x 6 "(15 სმ x 15 სმ) - $ 2.97
  • 3 28BYJ -48 უნიპოლარული სტეპერი მოტორსი - $ 6.24
  • ბრწყინვალება ბნელ პლანეტებზე - $ 8.27 (იხ. შენიშვნა 1)
  • ბრწყინვალება მუქი ვარსკვლავებში - $ 5.95 (სურვილისამებრ)

ელექტრონიკა

  • 3 ULN2003 Stepper Motor Drivers - $ 2.97
  • 1 Atmel ATMega328 (P) - $ 1.64 (იხ. შენიშვნა 2)
  • 1 HC -05 Bluetooth სერიული მოდულისთვის - $ 3.40
  • 1 16MHz ბროლის ოსცილატორი - $ 0.78 10
  • 1 DIP-28 IC სოკეტი $ 0.99 10-ში
  • სტრიპბორდის 1 ცალი (მოედანი = 0.1 ", ზომა = 20 რიგის სიგრძე 3.5") - $ 2.48 2 -ისთვის
  • 1 პანელი მთა DC მიწოდების ჯეკი, ქალი (5.5 მმ OD, 2.1 მმ ID) - $ 1.44 10
  • 2 22pF 5V კონდენსატორი - $ 3.00 100 -ზე (იხ. შენიშვნა 3)
  • 2 1.0 μF კონდენსატორი - $ 0.99 50
  • 1 10kΩ რეზისტორი - $ 0.99 50 -ისთვის

ინსტრუმენტები

  • სათადარიგო Arduino ან AVR ISP - ეს დაგჭირდებათ ATMega ჩიპის დასაპროგრამებლად
  • Screwdrivers - მარაგის ATMega არდუინოდან ამოღებისთვის
  • მულტიმეტრი - ან მინიმუმ უწყვეტობის მეტრი
  • ჩაქუჩი - იმის გამოსასწორებლად, რაც არ არის გაკეთებული სწორი გზით
  • საბურღი 5/16 ", 7/16" და 1 3/8 "საბურღი ბიტით
  • მცირე ნაკაწრები - კომპონენტების ლიდერების გასასწორებლად
  • 22 AWG ხრახნიანი სპილენძის მავთული (დიდი ფასი და ბევრი ვარიანტი აქ)
  • Solder - მე ვიყენებ 60/40 როზინის ბირთვით. მე აღმოვაჩინე, რომ თხელი (<0.6 მმ) შედუღება საქმეს ბევრად ამარტივებს. თქვენ ნამდვილად შეგიძლიათ იპოვოთ სადმე, მაგრამ ეს არის ის, რაც მე წარმატებული მქონდა.
  • ნაკადი - მე ნამდვილად მომწონს ეს ნაკადიანი კალმები, მაგრამ თქვენ ნამდვილად შეგიძლიათ გამოიყენოთ ნებისმიერი სახის ნაკადი, რამდენადაც ის მჟავის გარეშეა.
  • შედუღების რკინა/სადგური - თქვენ შეგიძლიათ მიიღოთ ეს საკმაოდ იაფად eBay და Amazon– ზე, თუმცა გაფრთხილებთ: იმედგაცრუება ფასის საპირისპიროდ იცვლება. ჩემს იაფფასიან (25 დოლარად) Stahl SSVT- ს აბსოლუტურად სამუდამოდ სჭირდება გათბობა, თითქმის არ აქვს თერმული ტევადობა და ისმის 60 Hz- ის ხმაური, რომელიც გამოდის გათბობის ელემენტიდან. არ ვიცი როგორ ვგრძნობ ამას.
  • დამხმარე ხელი - ეს არის ფასდაუდებელი ინსტრუმენტები, რომლებიც თითქმის აუცილებელია შედუღებისათვის და ისინი გვეხმარებიან, როდესაც საქმე ეხება პლანეტების აკრილის ზოლზე მიმაგრებას.
  • ეპოქსია - მე გამოვიყენე ლოქტიტის ეპოქსია პლასტმასისთვის, რომელიც საკმაოდ კარგად მუშაობდა. როდესაც შეცდომით დავუშვი პლანეტის ერთ – ერთი იარაღი (მიმაგრებულია პლანეტაზე) ბეტონზე, ეპოქსიდმა არ შეინარჩუნა ეს ორი ნაწილი ერთმანეთთან. მაგრამ კიდევ ერთხელ, მე მხოლოდ 15 -ს მივეცი რეკომენდებული 24 საათიდან სრულად განკურნების მიზნით. შეიძლება სხვაგვარად არ დაიშლებოდეს, მაგრამ ვერ ვიტყვი. მიუხედავად ამისა, თქვენ შეგიძლიათ გამოიყენოთ თითქმის ნებისმიერი წებო ან წებო, რომლის განკურნებას რამდენიმე წუთზე მეტი დრო სჭირდება, რადგან წებოს წასმის შემდეგ შეიძლება დაგჭირდეთ მცირეოდენი შესწორებების გაკეთება.
  • კბილის ჩხირები - თქვენ დაგჭირდებათ ეს (ან ნებისმიერი ერთჯერადი ამრევი) ეპოქსიდური ან ნებისმიერი 2 წილიანი წებოსთვის, თუკი მას არ გააჩნია აპლიკატორი, რომელიც აერთიანებს ორ ნაწილს თქვენთვის.
  • 3D პრინტერი - მე გამოვიყენე გადაცემათა სისტემის ზოგიერთი ნაწილის დასაბეჭდად (ფაილები შედის), მაგრამ თუ თქვენ შეძლებთ ამ ნაწილების დამზადებას სხვა (ალბათ ნაკლებად ზარმაცი) მეთოდების გამოყენებით, მაშინ ეს არ არის აუცილებელი.
  • ლაზერული საჭრელი - მე ეს გამოვიყენე მკაფიო მკლავების გასაკეთებლად, რომლებიც პლანეტებს მაღლა უჭირავს. წინა პუნქტის მსგავსად, თუ თქვენ შეძლებთ ნაწილების დამზადებას სხვა მეთოდის გამოყენებით (მათი ადვილად მოჭრა შესაძლებელია სხვა მეთოდების გამოყენებით), მაშინ ეს არ არის აუცილებელი.

პროგრამული უზრუნველყოფა

  • თქვენ დაგჭირდებათ Arduino IDE, ან AVR-GCC და AVRDude დამოუკიდებელი ვერსიები
  • Android Studio, ან Android Tools Eclipse (რომელიც მოძველებულია). ეს შეიძლება იყოს სურვილისამებრ მალე, რადგან მე შემიძლია ატვირთო შედგენილი APK Play Store– ში

Საერთო ღირებულება

ყველა ნაწილის საერთო ღირებულება (მინუს ინსტრუმენტები) არის დაახლოებით $ 50. ამასთან, ჩამოთვლილი ფასებიდან ბევრი არის 1 -ზე მეტი ერთეულისთვის. თუ დაითვლით მხოლოდ თითოეული საქონლის გამოყენებას ამ პროექტისათვის, ეფექტური მთლიანი ღირებულებაა დაახლოებით $ 35. ყველაზე ძვირადღირებული ნივთი არის დანართი, მთლიანი ღირებულების თითქმის მესამედზე. MAKE კურსისათვის ჩვენ მოგეთხოვებათ ყუთის ჩართვა ჩვენი პროექტის დიზაინში, ამიტომ ეს აუცილებელი იყო. მაგრამ თუ თქვენ ეძებთ ამ პროექტზე ხარჯების შემცირების მარტივ გზას, გადახედეთ თქვენს ადგილობრივ მსხვილ საცალო ვაჭრობას; მათ სავარაუდოდ ექნებათ ყუთების კარგი არჩევანი, რომლებიც უფრო იაფია ვიდრე თქვენი ტიპიური "ელექტრონიკის დანართი". თქვენ ასევე შეგიძლიათ შექმნათ თქვენი საკუთარი პლანეტები (ხის სფეროები არის ათეული) და დახატოთ ვარსკვლავებზე, ნაცვლად წინასწარ დამზადებული პლასტმასის. თქვენ შეგიძლიათ დაასრულოთ ეს პროექტი 25 დოლარზე ნაკლები!

შენიშვნები

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

ნაბიჯი 2: გადაცემათა სისტემის დამზადება

გადაცემათა სისტემის დამზადება
გადაცემათა სისტემის დამზადება
გადაცემათა სისტემის დამზადება
გადაცემათა სისტემის დამზადება
გადაცემათა სისტემის დამზადება
გადაცემათა სისტემის დამზადება

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

ყველა 3D მოდელისთვის, მე შევიტანე STL ფაილები (დასაბეჭდად), ასევე გამომგონებლის ნაწილებისა და ასამბლეის ფაილები (ასე რომ თქვენ შეგიძლიათ თავისუფლად შეცვალოთ ისინი). ექსპორტის საქაღალდედან, თქვენ უნდა დაბეჭდოთ 3 სტეპერიანი გადაცემათა კოლოფი და 1 ყველაფერი დანარჩენი. ნაწილებს არ სჭირდებათ ძალიან კარგი z ღერძის გარჩევადობა, თუმცა დონის საწოლი მნიშვნელოვანია ისე, რომ სტეპერიანი გადაცემათა კოლოფი მოერგოს პრესას, მაგრამ არც ისე მჭიდროდ, რომ შეუძლებელია ასვლა და გამორთვა. შევსება დაახლოებით 10% -15%, როგორც ჩანს, კარგად მუშაობს.

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

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

ნაბიჯი 3: ლაზერული ჭრა და აკრილის აკინძვის ჩასმა

აკრილის ბარის ლაზერული ჭრა და წებო
აკრილის ბარის ლაზერული ჭრა და წებო
აკრილის ბარის ლაზერული ჭრა და წებო
აკრილის ბარის ლაზერული ჭრა და წებო

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

ჩემს სკოლაში, DfX Lab– ის გასაოცარი დიზაინის წყალობით, მე შევძელი მათი 80W CO2 ლაზერული საჭრელის გამოყენება აკრილის ზოლების ამოსაკვეთად. ეს იყო საკმაოდ პირდაპირი პროცესი. გამოვიყენე გამომგონებელი ნახატი როგორც pdf, შემდეგ კი გავხსენი და "დავბეჭდე" pdf Retina Engrave პრინტერის დრაივერში. იქიდან, მე შევცვალე მოდელის ზომა და სიმაღლე (TODO), დავაყენე სიმძლავრის პარამეტრები (2 პასმა @ 40% სიმძლავრემ შეასრულა სამუშაო) და ლაზერული საჭრელი დანარჩენი გააკეთა.

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

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

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

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

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

ნაბიჯი 4: AT ბრძანებების გამოყენება Bluetooth მოდულის პარამეტრების შესაცვლელად

გამოიყენეთ AT ბრძანებები Bluetooth მოდულის პარამეტრების შესაცვლელად
გამოიყენეთ AT ბრძანებები Bluetooth მოდულის პარამეტრების შესაცვლელად

ეს ნაბიჯი შეიძლება ცოტა მწყობრიდან გამოიყურებოდეს, მაგრამ ბევრად უფრო ადვილია, თუ ამას გააკეთებთ სანამ HC-05 bluetooth მოდულს დაფაზე შეაერთებთ.

როდესაც მიიღებთ თქვენს HC-05- ს, თქვენ ალბათ გსურთ შეცვალოთ ქარხნული პარამეტრები, როგორიცაა მოწყობილობის სახელი (ჩვეულებრივ "HC-05"), პაროლი (ჩვეულებრივ "1234") და baud rate (ჩემი დაპროგრამებულია 9600 baud) რა

ამ პარამეტრების შესაცვლელად უმარტივესი გზაა კომპიუტერთან უშუალოდ მოდულთან დაკავშირება. ამისათვის თქვენ დაგჭირდებათ USB to TTL UART გადამყვანი. თუ თქვენ გაქვთ ერთი წევრი გარშემო, შეგიძლიათ გამოიყენოთ ეს. თქვენ ასევე შეგიძლიათ გამოიყენოთ ის, რომელსაც მოყვება არა USB არდუინოს დაფები (Uno, Mega, Diecimila და სხვა). ფრთხილად ჩადეთ პატარა ბრტყელი თავსაბურავი ATMega ჩიპსა და მის ბუდეს შორის არდუინოს დაფაზე, შემდეგ კი ჩადეთ ბრტყელი თავი მეორე მხრიდან. ფრთხილად ასწიეთ ჩიპი თითოეული მხრიდან, სანამ არ გაიფანტება და მისი სოკეტიდან ამოღება არ შეიძლება.

ახლა bluetooth მოდული თავის ადგილზე მიდის. თქვენი კომპიუტერიდან გათიშული arduino– ით, დაუკავშირეთ Arduino RX HC-05 RX– ს და TX– ს TX– ს. შეაერთეთ Vcc HC-05– ზე 5V– ზე Arduino– ზე, ხოლო GND GND– თან. ახლა დააკავშირეთ HC-05- ის State/Key pin 10k რეზისტორის საშუალებით Arduino 5V- თან. გასაღების პინის მაღლა გაყვანა არის ის, რაც გაძლევთ საშუალებას გასცეს AT ბრძანებები Bluetooth პარამეტრების მოდულის პარამეტრების შესაცვლელად.

ახლა, დაუკავშირეთ arduino თქვენს კომპიუტერს და ამოიღეთ სერიული მონიტორი Arduino IDE– დან, ან TTY ბრძანების სტრიქონიდან, ან ტერმინალური ემულატორის პროგრამა, როგორიცაა TeraTerm. შეცვალეთ თქვენი ბოდის განაკვეთი 38400 -ზე (ნაგულისხმევი AT კომუნიკაციებისთვის). ჩართეთ CRLF (სერიულ მონიტორში ეს არის ვარიანტი "ორივე CR და LF", თუ იყენებთ ბრძანების ხაზს ან სხვა პროგრამას, მოძებნეთ როგორ გააკეთოთ ეს). მოდული აკავშირებს 8 მონაცემთა ბიტს, 1 გაჩერების ბიტს, პარიტეტულ ბიტს და ნაკადის კონტროლს (თუ თქვენ იყენებთ Arduino IDE– ს თქვენ არ გჭირდებათ ამაზე ფიქრი).

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

მოწყობილობის სახელის შესაცვლელად შეიყვანეთ ტიპი "AT+NAME =", სად არის სახელი, რომლის გადაცემა გსურთ HC-05 როდესაც სხვა მოწყობილობები ცდილობენ მასთან დაწყვილებას.

პაროლის შესაცვლელად ჩაწერეთ "AT+PSWD =".

ბადის სიჩქარის შესაცვლელად ჩაწერეთ "AT+UART =".

AT ბრძანებების სრული ჩამონათვალისთვის იხილეთ ეს მონაცემთა ფურცელი.

ნაბიჯი 5: სქემის დიზაინი

სქემის დიზაინი
სქემის დიზაინი

მიკროსქემის დიზაინი საკმაოდ მარტივი იყო. მას შემდეგ, რაც Arduino Uno არ მოერგებოდა ყუთში გადაცემათა კოლოფის სისტემას, მე გადავწყვიტე ყველაფერი ერთ დაფაზე გადამეტანა და მხოლოდ ATMega328 გამოვიყენო ATMega16U2 USB-to-uart გადამყვანის გარეშე, რომელიც Uno დაფებზეა.

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

Ენერგიის წყარო

ელექტრომომარაგება მოდის 3A 5V დენის წყაროსგან, რომელიც მე eBay– დან ვიყიდე. ის მთავრდება 5.5 მმ OD, 2.1 მმ ID ლულის დანამატით, დადებითი წვერით. ასე რომ, წვერი აკავშირებს 5V წყაროსთან და ბეჭედს მიწასთან. ასევე არის 1uF კონდენსატორის დაშლა დენის წყაროსგან ნებისმიერი ხმაურის შესამსუბუქებლად. გაითვალისწინეთ, რომ 5V მიწოდება დაკავშირებულია როგორც VCC- თან, ასევე AVCC- თან, ხოლო მიწა დაკავშირებულია როგორც GND- თან, ასევე AGND- თან.

ბროლის ოსცილატორი

მე გამოვიყენე 16 მჰც ბროლის ოსცილატორი და 2 22 pF კონდენსატორი ATMegaXX8 ოჯახის მონაცემთა ცხრილის მიხედვით. ეს დაკავშირებულია მიკროკონტროლერის XTAL1 და XTAL2 ქინძისთავებთან.

სტეპერი ძრავის მძღოლები

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

Bluetooth მოდული

HC-05– ის TX უკავშირდება მიკროკონტროლერის RX– ს, ხოლო RX– ს TX– ს. ეს ხდება ისე, რომ დისტანციური მოწყობილობიდან bluetooth მოდულში გაგზავნილი ყველაფერი გადაეცემა მიკროკონტროლერს და მის ნაცვლად. KEY pin რჩება გათიშული ისე, რომ არ მოხდეს პარამეტრების შემთხვევითი ხელახალი კონფიგურაცია მოდულზე.

შენიშვნები

მე გადავაყენე 10k გამყვანი რეზისტორი გადატვირთვის პინზე. ეს არ უნდა იყოს აუცილებელი, მაგრამ მე მივხვდი, რომ მას შეუძლია ხელი შეუშალოს შანსს, რომ გადატვირთვის პინი დაბალი იყოს 2.5us ზე მეტ ხანს. ნაკლებად სავარაუდოა, მაგრამ მაინც არსებობს.

ნაბიჯი 6: სტრიპბორდის განლაგების დაგეგმვა

სტრიპბორდის განლაგების დაგეგმვა
სტრიპბორდის განლაგების დაგეგმვა

სტრიპტბორდის განლაგება არც ისე რთულია. ATMega მდებარეობს შუაში, სტეპერიანი ძრავის დრაივერებითა და ბლუთუს მოდულით მოთავსებულია ქინძისთავები, რომლებთანაც მათ უნდა დაუკავშირონ. ბროლის ოსცილატორი და მისი კონდენსატორები მდებარეობს Stepper3 და HC-05 შორის. ერთი გამშლელი კონდენსატორი მდგომარეობს იქ, სადაც დენის წყარო შედის დაფაზე, ხოლო მეორე სტეპერებს შორის 1 და 2.

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

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

ნაბიჯი 7: შედუღება

შედუღება
შედუღება
შედუღება
შედუღება
შედუღება
შედუღება
შედუღება
შედუღება

შენიშვნა: ეს არ იქნება გაკვეთილი შედუღების შესახებ. თუ აქამდე არასოდეს ყოფილხართ soldered, YouTube და Instructables თქვენი საუკეთესო მეგობრები არიან აქ. არსებობს უამრავი შესანიშნავი გაკვეთილი, რომელიც ასწავლის საფუძვლებს და დახვეწილ წერტილებს (მე არ ვამტკიცებ, რომ ვიცი უფრო წვრილმანები; რამდენიმე კვირის წინ, მე შეწოვა შედუღებაზე).

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

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

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

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

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

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

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

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

შენიშვნა

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

ნაბიჯი 8: ჩატვირთვის ჩამტვირთავი ბანკომატზე

Bootloader- ის დაწვა ATMega– ზე
Bootloader- ის დაწვა ATMega– ზე

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

შემდეგი ინსტრუქციები იქნა მიღებული arduino.cc– ის გაკვეთილიდან:

  1. ატვირთეთ ArduinoISP ესკიზი თქვენს Arduino დაფაზე. (თქვენ უნდა აირჩიოთ დაფა და სერიული პორტი ინსტრუმენტების მენიუდან, რომელიც შეესაბამება თქვენს დაფას)
  2. შეაერთეთ Arduino დაფა და მიკროკონტროლი, როგორც ეს მოცემულია დიაგრამაში მარჯვნივ.
  3. აირჩიეთ "Arduino Duemilanove ან Nano w/ ATmega328" ინსტრუმენტები> დაფის მენიუდან.(ან "ATmega328 პურის დაფაზე (8 MHz შიდა საათი)" თუ ქვემოთ აღწერილი მინიმალური კონფიგურაციის გამოყენებით.)
  4. გაუშვით ინსტრუმენტები> ჩაწერეთ ჩამტვირთავი> w/ Arduino როგორც პროვაიდერი. თქვენ უნდა დაგჭირდეთ ჩატვირთვის ჩამწერი მხოლოდ ერთხელ. ამის გაკეთების შემდეგ შეგიძლიათ ამოიღოთ ჯუმბერის მავთულები, რომლებიც დაკავშირებულია არდუინოს დაფის 10, 11, 12 და 13 პინებთან.

ნაბიჯი 9: არდუინოს ესკიზი

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

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

ნაბიჯი 10: ატვირთეთ Arduino Sketch

Arduino სკეტჩის ატვირთვა
Arduino სკეტჩის ატვირთვა

ქვემოთ მოყვანილია ძირითადად ArduinoToBreadboard– დან arduino.cc საიტზე:

მას შემდეგ რაც თქვენს ATmega328p- ს აქვს Arduino ჩამტვირთავი, შეგიძლიათ ატვირთოთ პროგრამები USB- სერიულ კონვერტორზე (FTDI ჩიპი) Arduino დაფაზე. ამისათვის თქვენ ამოიღეთ მიკროკონტროლი არდუინოს დაფიდან, ასე რომ FTDI ჩიპს შეუძლია მის ნაცვლად ესაუბროს მიკროკონტროლერს პურის დაფაზე. ზემოთ დიაგრამა გვიჩვენებს, თუ როგორ უნდა დააკავშიროთ RX და TX ხაზები არდუინოს დაფიდან ATmega– ს პურის დაფაზე. მიკროკონტროლის დასაპროგრამებლად აირჩიეთ "Arduino Duemilanove ან Nano w/ ATmega328" ინსტრუმენტები> დაფის მენიუდან. შემდეგ ატვირთეთ ჩვეულებისამებრ.

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

ნაბიჯი 11: Android პროგრამის კოდი

Arduino კოდის მსგავსად, ჩემი Android კოდი აქ არის. ისევ და ისევ, ეს არის თვით დოკუმენტირებული, მაგრამ აქ არის მოკლე მიმოხილვა.

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

თუ გსურთ თავად ააწყოთ პროექტი, თქვენ ჯერ უნდა ჩართოთ თქვენი ტელეფონი დეველოპერის რეჟიმში. ამის ინსტრუქცია შეიძლება დამოკიდებული იყოს თქვენი ტელეფონის მწარმოებელზე, თავად მოწყობილობის მოდელზე, თუ თქვენ იყენებთ პერსონალურ რეჟიმს და სხვა; მაგრამ, როგორც წესი, პარამეტრებზე გადასვლა -> ტელეფონის შესახებ და "აშენების ნომრის" 7 -ჯერ დაჭერა უნდა გააკეთოთ. თქვენ უნდა მიიღოთ სადღეგრძელოს შეტყობინება იმის შესახებ, რომ თქვენ ჩართეთ დეველოპერის რეჟიმი. ახლა გადადით პარამეტრებზე -> დეველოპერის პარამეტრები და ჩართეთ USB გამართვა. ახლა შეაერთეთ თქვენი ტელეფონი თქვენს კომპიუტერში დატენვის + მონაცემების USB კაბელის გამოყენებით.

ახლა ჩამოტვირთეთ ან კლონირებული პროექტი GitHub– დან. მას შემდეგ რაც ადგილობრივად გექნებათ, გახსენით იგი Android Studio– ში და დააჭირეთ Run (მწვანე სათამაშო ღილაკი ზედა პანელზე). აირჩიეთ თქვენი ტელეფონი სიიდან და დააჭირეთ ღილაკს OK. თქვენს ტელეფონზე ის გკითხავთ ენდობით თუ არა კომპიუტერს, რომელთანაც ხართ დაკავშირებული. დააჭირეთ ღილაკს "დიახ" (ან "ყოველთვის ენდეთ ამ კომპიუტერს", თუ ეს თქვენი საკუთარი, დაცული მანქანაა). აპლიკაცია უნდა იყოს შედგენილი, დაინსტალირებული თქვენს ტელეფონში და გახსნილი.

ნაბიჯი 12: აპლიკაციის გამოყენება

აპლიკაციის გამოყენება საკმაოდ მარტივია.

  1. თუ თქვენ უკვე არ გაქვთ დაწყვილებული HC -05 თქვენს ტელეფონთან, გააკეთეთ ეს პარამეტრებში -> Bluetooth.
  2. დააჭირეთ ღილაკს "დაკავშირება" პარამეტრების მენიუდან ზედა მარჯვენა კუთხეში.
  3. აირჩიეთ თქვენი მოწყობილობა სიიდან
  4. რამდენიმე წამის შემდეგ, თქვენ უნდა მიიღოთ შეტყობინება, რომ ის დაკავშირებულია. თუ არა, შეამოწმეთ რომ პლანეტარიუმი ჩართულია და არა ცეცხლი.
  5. აირჩიეთ თარიღი. გადაახვიეთ ზემოთ და ქვემოთ თვის, დღისა და წლის კომბინირებულ ამომრჩევლებზე და გამოიყენეთ ისრის ღილაკები ერთდროულად 100 წლით უკან ან წინ გადასასვლელად.
  6. დააჭირეთ გაგზავნას!

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

ნაბიჯი 13: საბოლოო შენიშვნები

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

საქმე იმაშია, რომ თუ მიდიხარ USF- ზე (წადი ხარ!) და დაინტერესებული ხარ ამ ტიპის ნივთებით, გაიარე MAKE კურსი. თუ თქვენი სკოლა გვთავაზობს მსგავს რამეს, მიიღეთ ის. თუ თქვენ არ ხართ სკოლაში ან არ გაქვთ მსგავსი კლასი, უბრალოდ შექმენით რამე! სერიოზულად, ეს არის ყველაზე რთული ნაბიჯი. იდეების მიღება რთულია. მაგრამ როდესაც თქვენ გაქვთ იდეა, გაუშვით მას. არ თქვათ "ოჰ, ეს სისულელეა" ან "ოჰ, დრო არ მაქვს". უბრალოდ იფიქრეთ იმაზე, თუ რა გახდის ამ იდეას გასაოცარს და განახორციელეთ იგი.

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

ვიმედოვნებ, რომ მოგეწონათ ეს ინსტრუქცია!

გირჩევთ: