Სარჩევი:

"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოზე გასასვლელად: 5 ნაბიჯი
"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოზე გასასვლელად: 5 ნაბიჯი

ვიდეო: "მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოზე გასასვლელად: 5 ნაბიჯი

ვიდეო:
ვიდეო: ფიზიკური უსაფრთხოების საბაზისო ტრენინგი | ფუსფუსი | კრავ მაგა 2024, ნოემბერი
Anonim
"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოს მართვაში
"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოს მართვაში
"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოს მართვაში
"მარტო სახლში" მძარცველების შემაკავებელი/ გამოიყენეთ Attiny13 სტეპერმოტორსა და სერვოს მართვაში

ეს შეიძლება იყოს ჩემი ერთ-ერთი ყველაზე უცნაური პროექტი:-) მაგრამ მაშინაც კი, თუ თქვენ არ ხართ დაინტერესებული ქურდების მოშორებით, ეს პროექტი შეიძლება გამოყენებულ იქნას ყველაფერში, სადაც გჭირდებათ სტეპერმოტორული ან სერვო ძრავის მართვა, ან თუნდაც რამდენიმე DC ძრავა Attiny13– ით..ყველა თქვენგანს ახსოვს ფილმი მარტო სახლში, სადაც მაკკოლი კალკინი ცდილობს მოაჩვენოს მძარცველებს, რომ სინამდვილეში ის მარტო არ არის, მუყაოს ფიგურას ჩაწერს ჩამწერ პლეერზე და სიმებს ათავსებს სხვა მუყაოს ფიგურაზე, რათა ადამიანებს მიბაძოს ცეკვა. ვინაიდან ხშირად ვარ სახლიდან შორს, მე ძალიან შეგნებულად ვტოვებ ჩემს სახლს, თითქოს ის ჯერ კიდევ დაკავებულია. ამისთვის მე ადრე გამოვაქვეყნე "სახლში სიმულატორი", რომელიც ანათებს ნათელს სპეციფიკურ შაბლონში, შემთხვევითობის შესაქმნელად დაემსგავსოს ვიღაცას. მე დავამატე "ყალბი ტელევიზია", რომელიც ისე გამოიყურება, თითქოს ტელევიზია თამაშობს. ეს ყველაფერი გვეხმარება, მაგრამ თუ საქმე სიმულაციის არსებობას ეხება, არაფერია უკეთესი ვიდრე რეალური მოძრაობა. ასე რომ, მე მჭირდებოდა რაღაც, რაც გადავიდა და რადგან მე არ მყავს ჩამწერი პლეერი და მინდოდა ის, რაც მუშაობდა შორს ყოფნისას, მჭირდებოდა რაღაც უფრო მყარი მდგომარეობა. მუყაოს ფიგურის ყველაზე აშკარა გზა მოძრაობის შთაბეჭდილების შესაქმნელად იქნებოდა 90 გრადუსით გადაბრუნება, რათა ის ალტერნატიულად დაბლოკოს სინათლე და არ დაბლოკოს სინათლე. მე პირველად გავაკეთე ეს იაფი სერვოთი, მაგრამ ამან ორი პრობლემა შექმნა: ძნელი იყო მუყაოს ფიგურის დამატება თუნდაც ძალიან დიდი, ღერძზე და ერთხელ მე გავაკეთე, გადატვირთვა უბრალოდ ძალიან ბევრი იქნებოდა იმ სერვისთვის. უფრო მძლავრ სერვოზე იყო ძალიან მკვეთრი ფასის ზრდა, ასე რომ დავიწყე ფიქრი "სტეპერმოტორზე". მე ჯერ კიდევ მქონდა ერთი, რომელიც მძიმე იყო მასზე მიმაგრებული გამაცხელებლის გამო, ასე რომ იდეალური ჩანდა. პროგრამა Steppermotor– ის მოსახერხებლად იწერებოდა არდუინოზე, მაგრამ გადატვირთვა მაინც წარმოშობდა გარკვეულ პრობლემას, რადგან ჩემს მუყაოს ფიგურას ჰქონდა ზომა ადამიანის ტანი (დაახლოებით 80 სმ სიგრძის). ან უნდა გამეძლიერებინა მუყაო, გამძიმებულიყო, ან უნდა გამეცილებინა. ეს უკანასკნელი, როგორც ჩანს, საუკეთესო გამოსავალი იყო, რადგან შემეძლო სინათლესთან მიახლოება. მთელი ამ ხნის განმავლობაში მეც ვთამაშობდი იმ აზრს, რომ ფიგურა წამომდგარიყო. ძრავები, ბორბლები და ა.შ. გადამიტრიალდა გონებაში და მიუხედავად იმისა, რომ მე ბოლომდე არ მიმიტოვებია ეს იდეა, ახლა მე უბრალოდ გადავწყვიტე მუყაოს ფიგურას დავამატო პატარა თვისება და ეს იყო მოძრავი თავი. ჩემი იდეა იყო ფიგურის 90 გრადუსით შემობრუნება, ასე რომ, მას სრული ჩრდილი მოჰქონდა, შემდეგ კი თავი დაუქნია. და ეს არის ის, სადაც ჩემი სერვო კვლავ შემოვიდა. მე ნამდვილად არ მინდოდა მთელი არდუინოს შეწირვა მხოლოდ მუყაოს ფიგურის შესაცვლელად. გარდა ამისა, მე გამოვიცანი Attiny13, რომელსაც მე ვყრიდი ირგვლივ, ისევე კარგად შეასრულებდა საქმეს: 4 ქინძისთავი სტეპერისთვის, 1 პინი სერვოსთვის. ეს არის ზუსტად ის, რაც Attiny13- ს უნდა შესთავაზოს. მე ვაღიარებ, რომ მე შეიძლება ვიყო ძალიან მკვრივი, ვიფიქრე ყველა სახის სცენარზე, თუ როგორ უნდა გამოვიყენო კონტრაქცია კონკრეტულ დროს, კონკრეტულ დროს, რადგან იდეალურად მინდოდა კონტროლი ის "სახლში სიმულატორიდან", რომელიც ადრე აღვნიშნე. ასე რომ, მე ვიფიქრე მავთულზე, ან უკაბელოზე, მაგრამ მაშინ Attin13 არ იყო საუკეთესო იდეა, რომელსაც პრობლემა აქვს Manchestercode– თან და დამჭირდა მიმღების პინი და იმ იაფი მიმღებების მგრძნობელობა არც ისე დიდია. ასე რომ, მე უკვე ვფიქრობდი მხოლოდ კომერციული ქრონომეტრის შეცვლაზე, მაგრამ შემდეგ მივხვდი, რომ იდიოტი ვიყავი. რადგან ნივთს დასჭირდება საკუთარი PSU, რატომ არ უნდა ავიღო კედელი და არ ჩავრთო ის დისტანციურ გადამრთველზე, რომლის კონტროლიც უკვე შემეძლო ჩემი At Simulator სიმულატორიდან. ასე რომ, მე დავიწყე ჩემი საბოლოო დიზაინის აგება. BOM

იაფი ServoA SteppermotorA მუყაოს ყუთი Attiny13An 8 ქინძისთავები IC სოკეტი Strip stripboard 9 ზოლები 17 ხვრელი ზოგიერთი servo გაფართოების cordsA ULN2003A 16 ქინძისთავები IC სოკეტი 10 k რეზისტორი პლასტიკური საჭრელი დაფა (ან მსუბუქი მასალის სხვა ნაწილი) 3 პინი მამრობითი სათაური (servo) 6 პინიანი მამრობითი სათაური (სტეპერმოტორული) წებოვანი ლენტი (რა თქმა უნდა)

დამატებით: Attiny– ის პროგრამირების გზა

უბრალოდ შენიშვნა სტეპერმოტორზე. მე ვიყენებ ძველ 55SI-25DAWC- ს, მაგრამ თუ თქვენ მაინც უნდა იყიდოთ, არის ძალიან იაფი სტეპერმოტორული/დრაივერების კომბინაცია: 28BYJ-48. ძრავა თავად ღირს 1.50 ევრო, მაგრამ 2 ევროდ შეგიძლიათ მიიღოთ იგივე ძრავა მძღოლის დაფით. ასე რომ, ეს არის კარგი გარიგება

ნაბიჯი 1: "მარტო სახლში" მუყაოს კაცის მშენებლობა

"მარტო სახლში" მუყაოს კაცის მშენებლობა
"მარტო სახლში" მუყაოს კაცის მშენებლობა
"მარტო სახლში" მუყაოს კაცის მშენებლობა
"მარტო სახლში" მუყაოს კაცის მშენებლობა

ყუთიდან მე დავჭრა ცალი 40x20 სმ და ნაჭერი 18x18. მე დავამატე ეს ორი ნაწილი თავსა და ტორსად, წებოვანი ლენტის გამოყენებით, დავტოვე მცირე ნაპრალი ორ ნაწილს შორის, მაგრამ დაფარულია გამწოვი ლენტით, რათა ჩამოყალიბდეს კისრის საყრდენი. (სურათები ამას ძალიან ნათლად ხდის) ძველი საჭრელი დაფისგან მე ვჭრი 20 სმ სიგრძის, დაახლოებით ნახევარი სმ სისქის (დაფის სისქეს) და დაახლოებით 1,5 სმ სიგანეს. 1.5 სმ საკმარისი იყო ჩემი სტეპერის ღერძის დასაყენებლად. თუ თქვენ გაქვთ განსხვავებული სტეპერი, დარწმუნდით, რომ ნაჭერი, რომელიც გაჭერით, საკმარისად ფართოა თქვენი სტეპერის ღერძისთვის. გახვრიტეს მკვდარი ცენტრი, რომელიც მოერგებოდა ჩემს ღერძს. შემდეგ მე პლასტიკი დავამატე მუყაოს 'ტორსა' ბაზაზე "კისრის" ქვეშ, მუყაოს ნაჭრებიდან მე შევქმენი ჩემი სერვოს დამჭერი. რა თქმა უნდა, ეს შეიძლება გაკეთდეს კუთხის რკინით (ან პლასტმასით), მაგრამ მუყაოს ტორსიზე მიმაგრება ცოტა ძნელია, ამიტომ მე მხოლოდ მუყაო გამოვიყენე სერვოზე მორგებისთვის. სერვოზე დავამატე მკლავი, რომელიც დამზადებულია პლასტმასისგან 11 x 0.6 x 0.6 პლასტმასისგან და დავამატე ის სერვოზე. კიდევ ერთხელ, შეხედეთ სურათებს, რომ ნახოთ როგორ კეთდება ეს. მიუხედავად იმისა, რომ ჩემი სტეპერი საკმაოდ მძიმე იყო მუყაოს ფიგურის გადასატანად, ბრუნვისა და შემობრუნების შედეგად გამოწვეული ბრუნვის ძალა ძრავას დაიწყებს გარშემო "სიარულს", ამიტომ მე შევქმენი ბაზის ფირფიტა 24 * 11 სმ ჭრის დაფა. მე გავაღე ორი ხვრელი სტეპერის ძრავის დასამაგრებლად და ჯერ კიდევ მაქვს საკმარისი ადგილი კონტროლერისთვის. მიუხედავად იმისა, რომ სერვო 180 გრადუსით ბრუნდება, მე მკლავი ისე დავაყენე, რომ თავი მთლიანად პირდაპირ არ დაედო. ამ გზით ის ადვილად იბრუნებს უკან, როდესაც სერვო ბრუნდება 0 პოზიციაზე

ნაბიჯი 2: "მარტო სახლში" კონტროლერის მშენებლობა

"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა
"მარტო სახლში" კონტროლერის მშენებლობა

კონტროლერი არის Attiny13, ერთვის ULN2003. მიუხედავად იმისა, რომ ჩემს ვერსიაში მე გამოვიყენე ცოტა მეტი ქინძისთავი, რათა დაფა უფრო მოქნილი იყოს სხვა პროექტებისთვის გამოსაყენებლად, ერთადერთი სათაურები გჭირდებათ 3 პინიანი მამრობითი servo header და 6 pin მამრობითი header სტეპერისთვის

ნაბიჯი 3: "მარტო სახლში": პროგრამული უზრუნველყოფა

EDIT 2019 პროექტი შემუშავდა ოდესღაც პოპულარული 'Smeezekitty' ბირთვის Attiny– ისთვის 13. MCUDude– ის ახლა ხშირად გამოყენებულ MicroCore– ს აშკარად აქვს პრობლემები ცვლადებთან დაგვიანებული მიკროწამების განცხადებებში. თუ თქვენ იყენებთ ამ ერთს, შეცვალეთ "delayMicroseconds (300 + p * (2500 /180));" "დაგვიანებით (5);"

ზემოთ მოყვანილი პროგრამა გვიჩვენებს, თუ როგორ უნდა მართოს ჩემი კონკრეტული სტეპერი და შეიძლება დაგჭირდეთ PORTB- ში ჩაწერილი მნიშვნელობების შეცვლა, თუ თქვენ გაქვთ სხვა სტეპერი. იმის გამო, რომ Attiny13 მეხსიერებაში საკმაოდ მცირეა და ასევე არ იძლევა ძალიან ბევრ ქინძისთავს, პროგრამა გამოტოვებს გარკვეულ დახვეწას. პირდაპირ PORTB- ზე წერა ნორმალურია, მაგრამ ამ შემთხვევაში ის ასევე დაწერს "0" -ს PB4 და PB5. PB5 არ არის დიდი პრობლემა, მაგრამ შეიძლება დაგჭირდეთ PB4- ის გამოყენება. ჩემს შემთხვევაში, მე დავდე ჩემი სერვო და ეს ნამდვილად არ იწვევს პრობლემას, რადგან მე არ ვიყენებ მათ ერთდროულად.

თუმცა, თუ გსურთ გამოიყენოთ სხვა მიკროკონტროლერი, როგორიცაა 328 და გსურთ თავი აარიდოთ წერილებს PB4 და PB5 და PB6 და PB7, გამოიყენეთ ნიღაბი მხოლოდ 0-3 ბიტზე დასაწერად. ამის ნიღაბი არის B00001111.

თუ გსურთ ბიტების დაყენება 0 და 2, წადით ასე:

ნაცვლად PORTB = 5, ჩაწერეთ: PORTB = (PORTB & ~ ნიღაბი) | (B00000101);

მათთვის, ვინც ამას ძალიან იდუმალად თვლის:

ის პირველ რიგში აფასებს PORTB– ის ღირებულებას NOT ნიღბით და OR არის შედეგი იმ მნიშვნელობით, რომლის დაწერაც გვსურს და მას მიანიჭებს PORTB– ს.

ასე რომ, დავუშვათ PORTB = 00010000 და ჩვენ გვინდა დავწეროთ მასზე 00000101, ჩვენ ამას დაუყოვნებლივ ვერ მივცემთ, რადგან ეს გაასუფთავებს PB4- ს.

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

PORTB = (PORTB & 11110000) | 00000101

PORTB = (00010000 & 11110000) | 00000101

PORTB = 00010000 | 00000101

PORTB = 00010101

ჩვენ დავწერეთ ჩვენი ღირებულება და ვინახავთ PB4

მაშ, რატომ არ შეგვიძლია მაშინვე OR PORTB იმ ღირებულებით, რაც ჩვენ გვსურს და პირველ რიგში?

ასე რომ, ამან შეიძლება შეინარჩუნოს PB4 და PB5 … მაგრამ ის ასევე უცვლელად ინარჩუნებს PB3-PB0- ს, თუ ერთ-ერთ მათგანში უკვე იყო „1“

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

ნაბიჯი 4: "მარტო სახლში" მძარცველების შემაკავებელი: გამოყენება

უყურეთ ვიდეოს რომ ნახოთ რომ მუშაობს (ის გადატრიალდა -90 გრადუსი, ბოდიში ამისთვის)

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

ნაბიჯი 5: "მარტო სახლში" რაც არ მუშაობდა ……

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

გირჩევთ: