Obsah:
Video: ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Ahojte kamoši, už je to nejaký čas, čo som zverejnil svoj posledný pokyn. V mojej hlave sa práve deje veľa vecí, ale podarilo sa mi zdokumentovať moje „prvé kroky“s čipmi ATTiny v tomto krátkom pokyne.
Objednal som si niekoľko vzoriek ATTINY85 len preto, že som ich chcel otestovať:-) (každý miluje testovanie vecí, však?). Potom som začal kresliť nápady do svojho notebooku. Aby som bol úprimný, prvá vec, ktorú som urobil, bolo blikanie LED diódy, čo je ako vždy dobrý začiatok kontroly, či vaše nastavenie/reťazec nástrojov funguje. Skúsil som aj záznamník teploty a vlhkosti s DHT22 a SoftwareSerial. Bolo to zložité, pretože knižnice DHT sú určené hlavne pre hodiny 16 MHz (ak máte v pláne niečo také urobiť, skontrolujte, ako prednastaviť vnútorné hodiny). Ale rozhodol som sa vám ukázať niečo, čo je zábavnejšie. BTW: Nahral som pre vás jednu z mojich kresieb, nie je to Rembrandt, ale ukáže vám, ako som na tento papier dostal tento (skutočne) hlúpy nápad: -P.
Použil som iba veci, ktoré som mal okolo seba, aby bol tento projekt čo najlacnejší (pre mňa). Výsledkom tohto malého dobrodružstva je pekný malý „robot ľahkého sledovača“za približne 10-15 dolárov (3 doláre pre mňa:-P)
Ak vás teda ATTINY zaujíma, čítajte ďalej.
BTW: ospravedlňujem sa za zlú angličtinu (nie som rodený hovorca)
Krok 1: Začíname s ATTiny a nástrojmi a materiálmi
Čo budete potrebovať na začiatok:
- čip ATTiny85
- Arduino UNO alebo podobné
-abreadboard s nejakým prepojovacím káblom alebo programátorom ATTINY alebo si vyrobte programátorský štít pre Arduino sami (pozrite sa na priložené obrázky, schema je z avdweb.nl). Tiež som urobil tento a som s ním skutočne spokojný. Jedinou zmenou, ktorú som urobil, bolo, že som pridal zásuvku pre sériu ATTinyx4 (pozri obrázok a schémy vývodov).
- Arduino IDE (nájdete ho tu)
- hardvérové súbory pre ArduinoIDE (stiahnite si ich a nainštalujte)
Informačný odkaz na ihriskodirect Odkaz na súbory github, ktoré som použil
- načítajte náčrt Arduina ako ISP do UNO (toto bude váš programátor)
- riaďte sa týmito pokynmi (https://highlowtech.org/) alebo týmto návodom (ardutronix) a vyskúšajte náčrt „žmurknutia“(upravte číslo PIN. Ako referenciu použite obrázok ATTINY! budete potrebovať predzáblesknutý ATTINY LED a k tomu odpor ~ 220Ohm)
Vykonajte malé nastavenie dosku, aby ste všetko skontrolovali. Ak ste urobili všetko správne, LED dióda začne blikať a ste pripravení ísť
NÁSTROJE
- Spájkovačka- Trochu spájky- Malý rezač drôtov- Dremel alebo iný rotačný nástroj (len na rezanie DPS!)- Trochu lepidla- Pinzeta- Drôty
MATERIÁLY
- prototypovanie DPS (~ 4cmx6cm to zvládne)- 2x LDR- 5x 10k odpor (2x pre LDR a 2x pre tranzistory BE, 1x LED)- 1x odpor 330Ohm (1x NEOPIXELS)- 2x LDR- 1x LED (farba vášho voľba, namiesto kolieska)- 3x NEOPIXEL WS2812- 2x tranzistor (BD137 alebo podobný)- 2x dióda (1N4001 alebo podobný)- 2x mikromotor (napr. z mikrokvadrokoptéry Hubsan)- 1x ATTINY85 + voliteľný (odporúča sa) 8PIN IC zásuvka- 1 x 1 s LIPO (použil som 140 Ah zo starej RC helikoptéry)- niekoľko pinheaderov/zásuviek- shrinktube (kryt LDR)
Pokračujme vybudovaním hardvéru …
Krok 2: Hardvér
Ak sa pozriete na priložené schémy, nastavenie hardvéru je veľmi jednoduché. Ak teda dokážete čítať schémy a používať spájkovačku, je to polovica triku. Pozrite sa aj na fotografie, pridal som pre vás niekoľko poznámok.
Neposkytujem plán na rezanie DPS, máte slobodu vytvoriť si vlastný dizajn (byť kreatívny a ukázať nám svoje drobné roboty). Umiestnenie všetkých elektronických súčiastok je len na vás. Niekoľko rád z mojej strany:
Pokúste sa presne zarovnať motory (sledujte uhol!) Namiesto kolies používame iba hriadeľ motora. (spotrebuje to menej energie) Odporúčam umiestniť motory pod batériu (hmotnosť) a použiť LDR vpredu (pod uhlom 45 °) spárované s diódou LED (túto kombináciu sa pokúšam použiť na vyhýbanie sa prekážkam, ďalej sú potrebné testy).
Ďalej odporúčam urobiť malý prepojovací mostík, aby sa batéria tak ľahko nestratila.
Ak je niečo nejasné alebo máte otázky, opýtajte sa ma. Z tohto malého projektu neurobí prácu veľa senikov.
Krok 3: Softvér
Najprv si stiahnite a nainštalujte knižnicu ADAFRUIT Neopixel Library
Tu je môj kód s niekoľkými hlavnými popismi (pridal som aj súbor náčrtu). Nekomentoval som každý krok, pretože si myslím, že to nie je potrebné.
Nahrajte skicu do svojho ATTiny85 a bavte sa s novou hračkou
Nápady na funkciu „osobnosť“+ možno príklady kódu sú veľmi vítané:-)
Ak máte nejaké otázky, pokojne sa pýtajte.
Dúfam, že sa vám páčil môj krátky návod a malý výlet do sveta ATTINY.
/* ATTINY85-Rata jednoduchý, svetlo poháňaný robot ATTINY85. Verzia 2.0, Auer Markus */
#zahrnúť
#zahrnúť
// motory
#define LMOTOR 0 #define RMOTOR 1 // LEDs #define PIXELPIN 2 #define NUMPIXEL 3 // LDRs #define LLDR A2 #define RLDR A3
// otherint emo = 0; float calib; booleovský emostát; starý oldmillis; // definujte NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel (NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800);
neplatné nastavenie ()
{// upscale hodiny, inak sa stretnete s niektorými problémami časovania (libix neopixelu je napísaný pre 16 MHz) #ak je definovaný (_AVR_ATtiny85_), ak (F_CPU == 16000000) clock_prescale_set (clock_div_1); #koniec Ak
// PINMODE pinMode (LMOTOR, VÝSTUP); pinMode (RMOTOR, VÝSTUP); pinMode (LLDR, INPUT); pinMode (LLDR, INPUT); // inicializácia pixelov PIXEL.begin (); PIXEL.show (); oneskorenie (500); // počiatočná sekvencia pre (int i = 0; i
prázdna slučka ()
{if (lightfollow () == 1) {left (); } else if (lightfollow () == 2) {vpravo (); } else if (lightfollow () == 0) {forward (); } emócia(); }
int lightfollow () {
int preshold = 14; int výsledok = 0; plavák vľavo = 0; plávať vpravo = 0; int vzorky = 1; // čítanie LDR pre (int j = 0; j <vzorky; j ++) {
vľavo = vľavo + analogické čítanie (LLDR); vpravo = vpravo + (analogRead (RLDR)*kalibrovať);
}
// vypočítajte výsledok (z ktorého smeru svetlo prichádza?)
if ((vľavo/vzorky)> ((vpravo/vzorky)+prah)) {výsledok = 2;}
else if ((vľavo/vzorky) <((vpravo/vzorky)-prah)) {výsledok = 1;}
else {result = 0;}
vrátiť výsledok; } void forward () {// Forward analogWrite (LMOTOR, 230); analogWrite (RMOTOR, 230); PIXEL.setPixelColor (0, PIXEL. Color (0, 0, 255)); PIXEL.setPixelColor (2, PIXEL. Color (0, 0, 255)); PIXEL.show (); }
prázdno vľavo () {
// VĽAVO analogWrite (LMOTOR, 150); analogWrite (RMOTOR, 255); PIXEL.setPixelColor (0, PIXEL. Color (0, 0, 255)); //PIXEL.setPixelColor(1, PIXEL. Color (75, 0, 0)); PIXEL.setPixelColor (2, PIXEL. Color (0, 100, 0)); PIXEL.show (); }
zrušiť právo () {
// SPRÁVNE analogWrite (LMOTOR, 255); analogWrite (RMOTOR, 150); PIXEL.setPixelColor (0, PIXEL. Color (0, 100, 0)); PIXEL.setPixelColor (2, PIXEL. Color (0, 0, 255)); PIXEL.show (); }
// toto je na ďalšie experimenty, snažím sa tomu dodať trochu osobnosti:-) skúšam, čo by sa dalo robiť, ale zatiaľ dobré nápady.
prázdna emócia () {int emotimer = 2500; int trvanie = náhodné (250, 750); if (millis () - oldmillis> emotimer) {oldmillis = millis (); emo = náhodný (1, 4); } if (millis () - oldmillis> duration) {emostate =! emostate; } if (emostate == true) {switch (emo) {case 1: PIXEL.setPixelColor (1, PIXEL. Color ((255), (255), (255))); PIXEL.show (); prestávka; prípad 2: PIXEL.setPixelColor (1, PIXEL. Color ((255), (0), (0))); PIXEL.show (); prestávka; prípad 3: PIXEL.setPixelColor (1, PIXEL. Color ((0), (255), (0))); PIXEL.show (); prestávka; predvolené: PIXEL.setPixelColor (1, PIXEL. Color (náhodný (0, 255), náhodný (0, 255), náhodný (0, 255))); PIXEL.show (); prestávka; }} else {PIXEL.setPixelColor (1, PIXEL. Color (25, 0, 0)); PIXEL.show (); }}
Odporúča:
Ako vyrobiť lacnú dosku Attiny Arduino: 4 kroky (s obrázkami)
Ako vyrobiť lacnú dosku Attiny Arduino: Väčšinu času mám problém, keď potrebujem Arduino v niektorých projektoch, kde potrebujem niekoľko I/O pinov. Vďaka platforme Arduino-Tiny je možné program Arduino napáliť do série Avr-tiny ako Attiny 85/45 Arduino-Tiny je open source sada ATtiny
Zvuková jednotka pre vstavané hračky s použitím Mini prehrávača DFplayer Mini: 4 kroky
Zvuková jednotka pre vstavané hračky používajúce mini prehrávač DFplayer Mini: Vitajte v mojom " ible " #35. Chcete vytvoriť zvukovú jednotku, ktorú môžete používať rôznymi spôsobmi, a v priebehu niekoľkých sekúnd odovzdáte požadované zvuky pre svoje hračky postavené na škrabancoch? Tu prichádza návod, ktorý vysvetľuje, ako to urobiť pomocou D
HX1 -DM - upcycled Arduino DUE Powered DIY Drum Machine (made with a Dead Maschine MK2): 4 kroky
HX1 -DM - upcycled Arduino DUE Powered DIY Drum Machine (made with a Dead Maschine MK2): The spec. Hybridný midi ovládač / bicie zariadenie: Arduino DUE poháňané! 16 padov na snímanie rýchlosti s veľmi nízkou latenciou 1 > ms 8 gombíkov, ktoré je možné priradiť ľubovoľnému príkazu Midi #CC 16 kanálov Vstavaný sekvencer (nie je potrebný žiadny počítač !!) MIDI vstup/výstup/funkcia
ESP8266/ESP-12 Arduino Powered SmartThings DS18B20 Teplota. Senzor: 4 kroky (s obrázkami)
ESP8266/ESP-12 Arduino Powered SmartThings DS18B20 Teplota. Senzor: Všetci radi vieme, aká je aktuálna izbová teplota a niekedy aj teplota v inej miestnosti, alebo možno dokonca vo vašom prázdninovom dome na druhom konci sveta. Možno budete chcieť monitorovať teplotu v dome vášho domáceho maznáčika Lizard
Floppy Powered PCI Slot Case Fan: 4 kroky
Ventilátorový puzdro na disketový slot PCI: Aj keď je disketa takmer vyhynutá, mnoho jednotiek PSU má stále konektor pre napájanie diskety. Neviete si rady s tým, čo s nimi? Využite ich na ochladenie svojej veže hacknutím ventilátora do skrinky na slot PCI