Cześć :)
Chciałem przedstawić pierwszy skończony (nie testowy) projekt na Arduino UNO.
Z pomcą majsterkowego forum udało się wykonać bezużyteczne pudełko (useless box) na mikrokontrolerze Atmega328 (identycznym jak jest w Arduino UNO).
Arduino UNO został wykorzystany do wykonania projektu i wersji testowej. Na końcu wszystko zostało przeniesione na Atmege (oczywiście zaprogramowaną przez Arduino UNO).
Spis potrzebnych elementów:
- Arduino UNO do testów (cena 134 zł, ja kupiłem w Nettigo)
- Drewniane pudełko kupione na Allegro (cena ok 10 zł)
- Mikrokontroler Atmega328 (cena ok 16 zł)
- Serwo np. SG-92R (cena ok 15 zł)
- Podstawka pod mikrokontroler
- Przełącznik
- Mikroprzełącznik
- Koszyk na baterie (4 paluszki)
- Kabelki, narzędzia
Zaczynamy od prac nad samym pudełkiem czyli mały majsterkowicz :)
Pudełko po usunięciu wnętrzności:
Pudełko z zaznaczonym obcięciem pokrywy:
Przełącznik + testy serwa:
Praktycznie gotowe pudełko (widać mikroprzełącznik podłączony pod reset, przełącznik, mikrokontroler na podstawce “na pająka”, serwo, koszyk):
Pomalowane i zmontowane:
Nie zamieszczam schematu bo praktycznie wszystko widać w kodzie programu. Jeżeli będą pytania odpowiem w komentarzach.
Teraz czas na program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
#include <Servo.h> Servo servoMain; int przelacznik1 = 8; int przelacznik2 = 9; int przelacznik1_val = 0; int przelacznik2_val = 0; void setup() { pinMode(przelacznik1, INPUT); pinMode(przelacznik2, INPUT); servoMain.attach(2); servoMain.write(10); delay(500); } void loop() { przelacznik1_val = digitalRead(przelacznik1); przelacznik2_val = digitalRead(przelacznik2); // zamkniete if (przelacznik1_val == 1) { servoMain.write(5); } // otwarte if (przelacznik2_val == 1) { servoMain.write(110); } } |
W kodzie nie bardzo jest co tłumaczyć bo jest bardzo prosty. Eksperymentalnie zostały ustalone wartości dla serwa. Jeżeli macie pytania co do kodu to proszę pisać w komentarzach do artykułu.
Filmiki z działania pudełka:
Na koniec jak widać na filmikach pudełko zostało pomalowane farbą do drewna na czerwono. Wyciągając wnioski na przyszłość z projektu, dałbym jeszcze jeden mikroprzełącznik z trybem serwisowym który ustawiłby serwo w połowie zakresu pracy, w celu naprawy urwanego ramienia :) Nie miałem jeszcze takiego przypadku ale ewentualna wymiana może być ciężka bez demontażu serwa.
Jako podsumowanie zaznaczę że faktycznie to pudełko do niczego się nie przydaje ale zabawa przy robieniu jest :)
Mógłbyś pokazać jeszcze ten drewniany element który “steruje” wyłącznikiem.
Poza tym projekt bardzo fajny. :-)
Wyciety kawalek z drewna i przyklejony kwadracik na koncu zeby latwiej trafic w przelacznik :) Wyciety i dopracowany eksperymentalnie.
Aha, ręka na filmikach nie jest moja :)
nice :)
Rozumiem że schemat spełnia zalecenia producenta dotyczące zasilania i warunków pracy?
A może by tak jakiś schemat ?
Takie coś można również zrobić na kilku krańcówkach i przekaźnikach, efekt działania będzie taki sam :)
Można też w ogóle tego nie robić – ostateczny efekt też będzie taki sam (w końcu to bezużyteczne pudełko) ;) Tu przede wszystkim chodzi o radość tworzenia, zrobienie czegoś działającego z użyciem również Arduino :)
Jeśli nie zrobimy, to nie będzie bezużytecznego pudełka. Mimo że jest bezużyteczne to jednak JEST, a to różnica :)
no szit sherlock xD
Powiem tak, robienie czegoś na procesorze co jego nie wymaga mija się z celem. Ja NNIE UŻYWAM procesorów i jakoś radze sobie na nieprogramowalnych elementach.
Był bym wdzięczny za udostępnienie schematu :)
Naprawdę trzeba się nieźle nudzić żeby wykonywać takie wariactwa. :))
Dam 5 gwiazdek na zachętę, ale coż, mam sporo zastrzeżeń:
W każdym bądź razie bardzo estetyczne wykonanie, bo jak ja mam przebłyski geniuszu, to wszystko na chybił trafił ;)
kwarc tu jest nie potrzebny, a co do filtracji zgadzam się w zupełności z kolegą nawet przy zasilaniu baterią powinno się filtrować napięcie dla mikrokontrolera. Polecam przeczytać ten artykuł: http://mikrokontrolery.blogspot.com/2011/04/zasilanie-mikrokontrolera.html
int przelacznik1 = 8;
int przelacznik2 = 9;
int przelacznik1_val = 0;
int przelacznik2_val = 0;
Źle! Ma być “volatile int”, bo O jest bezlitosne…
volatile jest tu zupełnie zbędny. Optymalizacja nie ma prawa nic tu zepsuć (tak długo jak nie zmieniasz kontekstu wywołania). Nadużycie volatile jest błędem przeciwko automatycznej optymalizacji.
Ja z kolei zrobiłem takie pudełko już jakiś dłuższy czas temu, jednak nie użyłem tam Arduino czy innych mikroprocesorów. Jedyną, rzeczą elektroniczną był opornik, który “dopasowywał” szybkość wysuwania się pajaca z pudełka do mojego “gustu”. W skład mojej myśli wchodziło pudełko z drewna, które sam skleiłem, kawałek pleksi na zrobienie pajaca, serwomechanizm (wykorzystałem tylko + i -, żółty kabel uciąłem i gdzieś go tam schowałem czy przylutowałem – nie pamiętam) oraz przełącznik 6-pin, mikro-wyłącznik, parę kabli i bateria 9V. Załączam dokument zrobiony na szybko w Paint’ie, jak się komuś nie podoba to niech sobie rozrysuje w Eaglu itd. Dwa zdjęcia, przedstawiające jak to w środku jest poukładane oraz film z działania tego mojego pudełka. Zaznaczam, że nie byłem autorem tego schematu, znalazłem go gdzieś w odmętach internetu.
https://www.youtube.com/watch?v=LZzSWhppLRI
I jeszcze ten Paint’owy pseudo-schemat… rezystor jest schowany przy jednym z kabli do serwomechanizmu pod niebieską taśmą izolacyjną.
Trochę za szybko paluch wyłazi z pudełka. Lepszy efekt jest jak chwilę odczeka, zanim wychynie z pudełka i wyłączy pstryczek :)
nie chcę wybrzydzać ale wolałbym z schematem
Motocyklista :D Tzn, to w paint’cie nabazgrałem na szybko, mogę to na czasie wolnym zrobić w bardziej cywilizowanym środowisku.
@Jarecki W ten sposób nie zrobi opóźnienia wysuwania się pajaca. Można za to zwolnić pracę serwomechanizmu poprzez wymianę rezystora na rezystor z większą opornością. Jak pisałem, jest zakryty na zdjęciu taśmą izolacyjną, na jednym z kabli idących do serwo.
a jak pudełko się otwiera?
U mnie ten pajac otwiera klapkę, poprzez podniesienie jej. Na filmie widać, że do klapki przymocowane od spodu są dwie nakrętki 10-tki dla obciążenia. gdybym przewrócił pudełko do góry nogami, klapka otworzyłaby się sama. Na zdjęciach nakrętek nie ma, były mocowane na klej, który po prostu puścił z czasem i nie chciało mi się z powrotem kleić.
lazłem ciekawy filmik. Jest w temacie tego tematu (masło z margaryny, czy jak to tam było…). Dobry na poprawę humoru i jako wizja przyszłości. https://www.youtube.com/watch?v=6xCd55oSgO4
“Zna” mi zżarło.
http://demotywatory.pl/4313027/W-Japonii-wszystko-jest-inne
Da się może w tym przypadku zaprogramować pudełko tak by oprócz szybkiego przełączania zachowywało się choć trochę jak: https://www.youtube.com/watch?v=6xCd55oSgO4
Cześć! Niezła zabawka dla dzieci ;) No niespodzianka murowana. Z technologicznych pasji dla dzieci, to ja polecam kształtować też samodzielność i poszukiwania technologiczne od najmłodszych lat np. wysyłając dzieciaka na kolonie letnie z robotami ;)
Pająki są w przyrodzie, a nie w elektronice.
Mała płytka kosztuje 6zł nie prototypowa w drogim sklepie elektronicznym.
A pająki lubią zwarcia:)
Świetne rozwiązanie.