Skocz do zawartości

takinijaki

Użytkownicy
  • Zawartość

    25
  • Rejestracja

  • Ostatnio

Reputacja

20 Dobra

O takinijaki

  • Ranga
    3/10

Ostatnio na profilu byli

386 wyświetleń profilu
  1. Jakiś czas temu postanowiłem zbudować zegarek z jakimś termometrem i od razu zabrałem się do roboty dopiero później dodałem do niego buzzer by mógł służyć też w razie potrzeby za budzik. Do budowy wykorzystałem zegar czasu rzeczywistego ds1307, arduino nano, wyświetlacz lcd 2x16 wraz z konwerterem I2C, przetwornicę step up na 5v, akumulator li-ion, termometr dht11 oraz moduł ładowania. Z racji , że nie posiadam drukarki 3d a nie chciało mi się wykonywać całej obudowy zegarka ze sklejki postanowiłem użyć plastikowego opakowania znalezionego u siebie w pokoju przy okazji postanowiłem zużyć trochę elementów odlutowanych z różnych elektro śmieci. Zdjęcia: Jak widać na jednym z zdjęć postanowiłem wykorzystać ds1307 w wersji modułu do przylutowania nie zaś płytki z modułem ponieważ chciałem wypróbować wyjście tego układu(na filmie wykorzystałem je do migania diodą podczas alarmu).Przetwornica z kolei była niezbędna do działania wyświetlacza który bez tych 5v miał tak słabe podświetlenie że niewiele było widać a buzzer ukryłem pod mikrokontrolerem. Jeśli chodzi o montaż to większość trzyma się na śrubach poza przetwornicą i modułem ładowanie które przymocowałem klejem na gorąco oraz przyciskami które są zamontowane na wcisk. Jeden włącza cały zegarek drugi wyłącza alarm. Film: Na filmie uchwyciłem moment aktywacji alarmu. Zegarek najlepiej wygląda kiedy jest ciemno wtedy właśnie najlepsze wrażenie sprawia dioda która oświetla od wewnątrz plątaninę kabli znajdującą się wewnątrz. Co do kodu to jest on tak prosty jak się da z po za tym korzystałem z bibliotek: Wire, DHT, LiquidCrystal_I2C, DS1307. Szczególnie warto wspomnieć o tej ostatniej nad wyraz wygodna oferująca funkcje sterowania wyjściem zegara i dostępu do wewnętrznej wbudowanej w zegar pamięci przygotowana przez jarzebskiego jak toś będzie chciał to wystarczy po prostu wpisać w wyszukiwarkę i wyskoczy na pierwszym miejscu.
  2. Pomysł na robota przyszedł w najmniej spodziewanym momencie mianowicie podczas rozbiórki starego laptopa a dokładnie w momencie wymontowywania dysku który był do całości przymocowany przy pomocy metalowej ramki. I właśnie podczas demontażu uzmysłowiłem sobie że ta ramka idealnie nadaje się jako podstawa do robota. Jest całkiem wytrzymała aczkolwiek słabo odporna na zginanie i tak oto zabrałem się do roboty. Do budowy wykorzystałem cztery silniki dc z przekładnią 1:48, najzwyklejsze koła z oponami, mnóstwo śrub, nakrętek i dystansów M3, sklejkę o wymiarach 9cm na 14cm, do sterowania silnikami użyłem l293d, do komunikacji zastosowałem moduł bluetooth hc-05, po za tym wykorzystałem jeszcze arduino pro mini w wersji 3.3V/8Mhz, oraz stabilizator 5V do zasilania modułu bluetooth, trzy złącza ark, płytkę prototypową 5cm na 7 cm. Do zasilania całości używam dwóch akumulatorów litowo-jonowych. Zdjęcia: Jak widać wszystko opiera się na na tej ramce do której przykręciłem silnik i płytkę ze sklejki resztę elementów przykręciłem do sklejki. Wszędzie wykorzystałem te same śruby - M3 dla ułatwienia sobie życia. Płytka prototypowa jest zamocowana z 1cm nad sklejką dla lepszego wyglądu. Sterownik do silnika ukryty jest pod arduino. Film: W tym filmie pokazałem jak steruje nim za pomocą pilota bluetooth który utrzymuje komunikacje za pomocą dwóch modułów hc-05(jeden w pilocie i drugi w robocie) ustawionych odpowiednio jako master i slave. Wybrałem te moduły ponieważ jako jedyne mają możliwość połączenia ich ze sobą nawzajem. Sam robot powstawał w wolnych chwilach przez prawie miesiąc z powodu użycia w pierwszej wersji podstawki dip do sterownika silnika która z nieznanych powodów dawała o wiele mniejsze napięcia na pinach wyjściowych niż powinna co doprowadzało do tego że choć sam mostek h był dobry to układ nie działał.
  3. Często wykorzystuje w swoich projektach bluetooth który przynajmniej dla mnie jest najprostszą i najlepszą formą komunikacji na małe odległości. Stąd też wpadłem na pomysł wykonania małego pilota bluetooth mniej więcej takiej wielkości żeby zmieścił się w całości w ręce i można go było obsłużyć jedną ręką. A że lubię nowości to postanowiłem wykorzystać moduł digispark z mikrokontrolerem Attiny85 które wydawało mi się najlepsze pod względem wielkości jednak nie wiedziałem wtedy jeszcze że nie posiada ona uartu który był nie zbędny do komunikacji przy pomocy modułu hc-05. Po za tym do budowy pilota wykorzystałem jeszcze obudowę kradex z47u, przyciski, joystick, akumulator Li-pol, oraz przetwornicę step-up. Zdjęcia: Trudnością którą napotkałem w trakcie budowy okazał się brak pinów portu szeregowego na szczęście rozwiązanie okazało się proste a była nim biblioteka SoftwareSerial która pozwala na symulowanie portu szeregowego na dowolnych pinach. Po za tym problemem okazał się brak miejsca który zmusił mnie do wystawienia akumulatora na zewnątrz konstrukcji a nie tak jak początkowo planowałem ukryć go wewnątrz . Kod: #include <SoftwareSerial.h>//RX, TX SoftwareSerial sserial(0,1); int a1 = 0; int a2 = 0; int a3 = 0; int a4 = 0; void setup() { sserial.begin(9600); sserial.println("test"); } void loop() { a1 = analogRead(A2);//2 od góry a2 = analogRead(A3);//3 od góry a3 = digitalRead(2);//3 od dołu a4 = digitalRead(0);// 1 od dołu if((a1 > 250)&&(a1<850)){ if((a2 > 250)&&(a2<800)){ sserial.println("u"); delay(100); } } if(a1 > 850){ sserial.println("q"); delay(100); }if(a1 < 250){ sserial.println("w"); delay(100); }if(a2 > 800){ sserial.println("e"); delay(200); }if(a2 < 250){ sserial.println("r"); delay(100); }if(a3 == HIGH){ sserial.println("t"); delay(100); }if(a4 == LOW){ sserial.println("y"); delay(100); } } Film: Przepraszam za słabą jakość filmu ale niestety aparat w telefonie nie pozwala na nagrywanie w lepszej jakości. Po za tym na filmie widać to że robot nie zawsze reaguje na polecanie ale to już było wynikiem wyładowującego się akumulatora. Starałem się by pilot był jak najmniejszy, możliwy do obsługi za pomocą jednej ręki a przy tym w miarę wygodny by dłuższa obsługa nie męczyła ręki .To rozwiązanie ma też jednak swoje wady na przykład nie ma możliwości by obsługiwać nim coś bardziej skomplikowanego niż coś co wymagało by więcej niż jednego joysticka(np. robot z chwytakiem, dron)
  4. Jakiś czas temu postanowiłem się trochę pobawić modułem 443Mhz który jest najpewniejszy ze wszystkich testowanych przeze mnie tanich modułów radiowych. Podchodząc do tego z pewną obawą , że znowu nie będzie działał z nieznanych powodów i kolejne pieniądze wyrzucane zostaną w błoto ale tym razem działa prawidłowo. Może to wynika z faktu , że w tym module radiowym po naciśnięciu przycisku w nadajniku w na odpowiednim wyjściu odbiornika zmienia się się stan z niskiego na wysoki a nie jak w innych odbiornikach komunikuje się za pomocą interfejsu jednoprzewodowego. Do budowy swojego robota użyłem: L298N, 2 akumulatorów litowo - jonowych, paru przewodów połączeniowych , silnika DC z przekładnią 1:48, obrotowego kółka do podwozia robota, całość trzyma się na sklejce o grubości 2mm długości, 9cm długości oraz 5cm szerokości w najszerszym miejscu. Film Przepraszam za słabą jakość która jest wynikiem mojego słabego telefonu jak i za drgania ale trudno sterować jedną ręką. Zdjęcia Jak widać cała konstrukcja jest bardzo prosta pod wszelkimi względami ale jednak całkiem dobrze działa. Wszystko to jest możliwe dzięki prostemu sterownika silników do którego obsługi są wymagane tylko cztery piny cyfrowe jak i temu że ma wbudowany stabilizator 5v dzięki czemu można bez problemów podłączyć bezpośrednio odbiornik. Pojazd jest idealny do zabawy a sam moduł puki co sprawuje się idealnie i póki co niema z nim żadnych problemów a dodatkowo jest banalny w obsłudze. Dodatkowo ma wygodny wytrzymały pilot z osłonką uniemożliwiającą przypadkowe włączenie oraz z haczykiem do przyczepienia go do na przykład kluczy.
  5. Co do usypiania nie pomyślałem faktycznie, jeśli chodzi o zasilanie z zewnątrz to była by to widoczna modyfikacja co przy niskiej wytrzymałości zamka(spowodowane tym, że nie miałem w domu kleju odpowiedniego do tej roboty)pozbawiło by skrzynkę idealnego kamuflażu.
  6. Każdy zapewne ma rzeczy które chce mieć schowane i zabezpieczone przed ciekawskimi osobami stąd też zrodził się u mnie pomysł na zaadoptowania do tego celu drewnianej skrzynki która stała u mnie od dłuższego czasu zawalając tylko przestrzeń. Przede wszystkim zależało mi na tym by z zewnątrz nie było widać żadnych modyfikacji. Poza skrzynką wykorzystałem arduino nano, shielda do nano, serwomechanizmu no i oczywiście modułu RFID, jako zasilania użyłem akumulatora Li-Pol. MECHANIKA Co do samej skrzynki to ma ona wymiary: 9,5 cm szerokości, 13 cm długości i 8 cm wysokości. Grubość w każdym miejscu wynosi 8 mm. Z przodu jest zamykana na prosty bardziej ozdobny niż przydatny zamek. Całe zamknięcie jest oparte na serwomechanizmie który podobnie jak wszystko inne jest przyklejony . Haczyk przykręcony do serwomechanizmu blokuje się w razie nieautoryzowanego otwarcia zaczepia o kawałek wystającej deski. ELEKTRONIKA Wszystkie wymienione wyżej elementy elektroniczne połączyłem za pomocą przewodów połączeniowych jedynie złącze od akumulatora jest przylutowane do shield dla arduino nano. KOD #include <SPI.h> #include <MFRC522.h> #include<Servo.h> #define SS_PIN 10 #define RST_PIN 9 MFRC522 rfid(SS_PIN, RST_PIN); const byte poprawna_karta[] = {0x47,0x35,0x8E,0x7A}; Servo myservo; void setup() { Serial.begin(9600); SPI.begin(); rfid.PCD_Init(); myservo.attach(5); myservo.write(0); delay(2000); myservo.write(70); } void loop() { if ( ! rfid.PICC_IsNewCardPresent()) return; if ( ! rfid.PICC_ReadCardSerial()) return; if (rfid.uid.uidByte[0] == poprawna_karta[0] || rfid.uid.uidByte[1] == poprawna_karta[1] || rfid.uid.uidByte[2] == poprawna_karta[2] || rfid.uid.uidByte[3] == poprawna_karta[3] ) { myservo.write(0); delay(2000); myservo.write(70); }else{ myservo.write(70); } rfid.PICC_HaltA(); rfid.PCD_StopCrypto1(); } FILM DZIAŁANIE Działanie kodu polega na odszukaniu karty(22 linijka), odczytaniu(24 linijka), porównaniu odczytanego z karty kodu z tablicą poprawna_karta[] i otwarcie w przypadku dobrej karty lub dalsze zamknięcie w przypadku złej. Wbrew pozorom zawartość skrzynki jest bardzo bezpieczna z czterech powodów, po pierwsze nikt nie zwraca uwagi na starą skrzynkę leżącą w tym samym miejscu od kilku lat(nie tak jak w przypadku nowej zupełnie skrzynki), po drugie nie widać śladów modyfikacji zwiększającej bezpieczeństwo(tak jak w przypadku tradycyjnego zamka) a także karta RFID(choć w moim przypadku bryloczek) można łatwo schować no i w końcu trudność otwarcia zamka nie posiadając karty. Jedyną wadą jest to że można lekko odchylić wieko jednak to kwestia spasowania haczyka.
  7. @ethanak dzięki za radę spróbuję tego @Cydek kondensator służy do eliminacji zakłóceń.
  8. Witam Tak jak napisałem w temacie mam problem z obsługą 2rf24l01 a dokładnie po kilku godzinach prób nie udało mi się uruchomić ani jednego programu na Arduino nano. Czy moglibyście coś mi doradzić w związku z tymi modułami ? Dodam że przylutowałem kondensatory 3.3µF. Poniżej wklejam jeden z przykładów jaki próbowałem zastosować. Nadajnik #include <SPI.h> #include <nRF24L01.h> #include <RF24.h> int przycisk = 7; const uint64_t pipe = 0x1CF8361637LL; RF24 radio(7, 8); int stan; void setup() { pinMode(przycisk,INPUT); radio.begin(); radio.openWritingPipe(pipe); } void loop() { stan = digitalRead(przycisk); radio.write(&stan, sizeof(int)); / } Odbiornik #include <SPI.h> #include <nRF24L01.h> #include <RF24.h> const uint64_t pipe = 0x1CF8361637LL; int dioda = 8; RF24 radio(7, 8); int stan; void setup() { pinMode(dioda,OUTPUT); delay(1000); radio.begin(); radio.openReadingPipe(1,pipe); radio.startListening(); } void loop() { if (radio.available()) { radio.read(&stan, sizeof(int)); if(stan == 0) { digitalWrite(dioda,HIGH); }else digitalWrite(dioda,LOW); } }
  9. To dobry pomysł szczególnie jak będę chciał zabezpieczyć większy teren tym alarmem. Co do bezpieczeństwa jak umieści się alarm w odpowiednim miejscu(tzn. na wysokości stóp) ryzyko, że ktoś spojrzy w laser jest małe chociaż wtedy możliwe jest to że, alarm zostanie po prostu ominięty.
  10. Przyznam się faktycznie o tym nie pomyślałem na początku ale wystarczyło umieścić laser odpowiednio pod łóżkiem a układ(za pomocą taśmy dwustronnej) pod szafką gdzie mam do niego w miarę wygodny dostęp. Jedyny problem to reset bo wymaga odczepienia układu i ponownego montażu.
  11. Jakość dźwięku nie ucierpiała na przeróbce, dopiero powyżej 12 m zaczęły się szumy.
  12. Z powodu zbliżających się upałów i wszędobylskiego słońca wpadłem na pomysł skonstruowania solar trackera do zasilania wiatraka. Z zamysłów miała to być prosta konstrukcja jedno osiowa z powodu takiego że będzie stała na balkonie. Do jej budowy wykorzystałem: stare pudełko, fotorezystory, serwomechanizm, Arduino Uno, rezystory 10kΩ, sklejke, balse,przewody połączeniowe no i oczywiście panele słoneczne. MECHANIKA Jako podstawę wykorzystałem stare pudełko w nim z kolei za pomocą mini szlifierki zrobiłem otwór pod serwomechanizm i nieco niżej z boku otwór na kable od serwomechanizmu. Arduino Uno jest przykręcone do boku pudełka za pomocą śrub od serwomechanizmów.Podstawa solar trackera jest zrobiona ze sklejki o wymiarach 6x6 cm i grubości 3mm i przykręcona do serwomechanizmu za pomocą śrub.Głowna płyta z panelami słonecznymi składa się z 2 paneli słonecznych jednego(65x65x3mm o mocy 5V i 0,4W) i drugiego(136x110x3mm o mocy 6V i 2W). Główna płyta jest przymocowana do podstawy za pomocą śruby i kleju.W rogach głównej płyty są miejsca fotorezystorów zakrytych za pomocą niskiego ogrodzenia z balsy. NARZĘDZIA mini szlifierka i pistole do kleju na gorąco jak i sam klej ELEKTRONIKA W rogu podstawy solar trackera umieściłem za pomocą śrub coś na kształt shielda do serwomechanizmu i fotorezystorów.Całość jest zasilana z Arduino Uno. KOD #include <Servo.h> Servo myservo; int pos = 90; void setup() { myservo.attach(9); Serial.begin(9600); } void loop() { int a = analogRead(A1); int b = analogRead(A2); int roznica = a - b; if(roznica>20){ if(pos<=160){ pos++; myservo.write(pos); } } else if(roznica<-20){ if(pos>20){ pos--; myservo.write(pos); } } delay(200); } Działanie kodu polega na odczytywaniu rezystancji fotorezystorów następnie odejmowania jednej rezystancji od drugiej i w zależności od tego czy różnica będzie powyżej 20 bądź poniżej 20 wykonywać ruch serwomechanizmu w jedną bądź w drugą stronę. FILM TESTY Z powodu pogody póki co sprawdzenie rzeczywistych osiągów paneli słonecznych jest nie możliwe.Ale jak tylko pokaże się słońce to w komentarzu napiszę jakie napięcie i natężenie udało mi się uzyskać z poszczególnych paneli.
  13. Zapewne każdy z was używa często słuchawek czy to przy komputerze czy też w trakcie wędrówki do szkoły. Zapewne też nie jednemu oderwał się kabel(u mnie najczęściej była to masa) od tych słuchawek. W takim wypadku najczęściej kupuje się audio jacka i się lutuje. Tak było i u mnie ale po którymś z kolei takim przypadku stwierdziłem że dość i przerobię je po prostu na bluetooth. Do przeróbki wykorzystałem słuchawki hykkera kupione w biedronce za dwadzieścia złoty nieznanego modelu. Pomimo niskiej ceny były one nad wyraz wygodne i dobre. MATERIAŁY akumulator Li-Pol 1S 250mAh, przełącznik z dźwignią, ładowarka Li-Pol, Moduł odtwarzania muzyki XY-BT-Mini - MP3 - Bluetooth NARZĘDZIA mini szlifierka, pistolet do klejenia WYKONANIE Po otworzeniu słuchawki lewej i odlutowaniu poprzednich kabli za pomocą mini szlifierki wykonałem otwór na kabel USB do ładowarki. Przełącznik z dźwignią jest umieszczony w dawnym wyjściu kabli ze słuchawki przymocowany jest za pomocą śruby i nakrętki dołączonej w zestawie z przełącznikiem. Następnie po wykonaniu otworu na kabel USB do ładowarki zacząłem od ładowarki Li-Pol, przełącznika z dźwignią, akumulatora, modułu MP3 -Bluetooth. Dopiero po połączeniu tych elementów połączyłem głośniki w słuchawkach z modułem MP3-Bluetooth. Do umiejscowienie i odizolowania połączeń użyłem kleju na gorąco i taśmy izolującej. Po wszystkim zamknąłem z powrotem słuchawkę i zorientowałem się że istnieje problem o jakim nawet nie pomyślałem. mianowicie słuchawka się nie domyka z powodu kondensatorów modułu MP3-Bluetooth zostawiając około dwu milimetrową przerwę.Drugą słuchawkę pozostawiłem nie tknięto. FILM TESTY Po tych modyfikacjach testowałem słuchawki przez tydzień zarówno na spacerach jak i w domu przed komputerem.I jestem bardzo zadowolony. Moduł bluetooth pomimo swojej ceny(13 zł) okazał się świetnym wyborem co prawda zasięg różnił się trochę od tego deklarowanego prze producenta(był mniejszy o około 3 metry, po tym dźwięk zaczął przerywać) ale i tak spisywał się nieźle nigdy mi nie rozłączyło czy to telefonu czy komputera ze słuchawkami tylko te kondensatory tak trochę kują.Ale nawet pomimo tej szpary słuchawka się nie rozpada. Bateria na pełnym naładowaniu starcza na około 1,5 godziny zależy od głośności słuchawek.
×
×
  • Utwórz nowe...