Obsah:
Video: ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Ahoj, lidi, už je to nějaký čas, co jsem zveřejnil svůj poslední instruktáž. V mé hlavě se právě děje mnoho věcí, ale podařilo se mi zdokumentovat své „první kroky“s čipy ATTiny v tomto krátkém instruktážním programu pro vás.
Objednal jsem si několik vzorků ATTINY85 jen proto, že jsem je chtěl otestovat:-) (každý miluje testování věcí, že?). Poté jsem začal kreslit nějaké nápady do svého notebooku. Abych byl upřímný, první věc, kterou jsem udělal, bylo blikání LED, což je jako vždy dobrý začátek pro kontrolu, zda vaše nastavení/řetězec nástrojů funguje. Zkoušel jsem také záznamník teploty a vlhkosti s DHT22 a SoftwareSerial. To bylo ošemetné, protože knihovny DHT jsou určeny hlavně pro hodiny 16 MHz (pokud máte v plánu něco takového provést, zkontrolujte, jak přednastavit interní hodiny). Ale rozhodl jsem se ukázat vám něco, co je zábavnější. BTW: Nahrál jsem pro vás jednu ze svých kreseb, není to Rembrandt, ale ukáže vám, jak jsem na papír dostal tento (opravdu) hloupý nápad: -P.
Použil jsem jen věci, které jsem měl kolem sebe, aby byl tento projekt co nejlevnější (pro mě). Výsledkem tohoto malého dobrodružství je pěkný malý „robot pro sledování světla“za zhruba 10–15 $ (pro mě 3 $:-P)
Pokud vás tedy ATTINY zajímá, čtěte dále.
BTW: omlouvám se za svou špatnou angličtinu (nejsem rodilý mluvčí)
Krok 1: Začínáme s ATTiny a nástroji a materiály
Co budete potřebovat, abyste mohli začít:
- čip ATTiny85
- Arduino UNO nebo podobný
-abreadboard s nějakým propojovacím drátem nebo programátorem ATTINY nebo si vyrobte programátorský štít pro Arduino sami (podívejte se na přiložené obrázky, schema je z avdweb.nl). Také jsem udělal tento a jsem s ním opravdu spokojen, jedinou změnou, kterou jsem provedl, bylo, že jsem přidal zásuvku pro řadu ATTinyx4 (viz obrázek a diagramy pinoutů).
- Arduino IDE (získáte zde)
- hardwarové soubory pro ArduinoIDE (stáhněte a nainstalujte je)
Informační odkaz na hřištědirect Odkaz na soubory github, které jsem použil
- načtěte skicu Arduino jako ISP do UNO (to bude váš programátor)
- řiďte se touto instrukcí (https://highlowtech.org/) nebo touto instrukcí (ardutronix) a vyzkoušejte náčrtek „mrknutí“(upravte PIN č. použijte obrázek ATTINY jako referenci! budete potřebovat předzářenou ATTINY LED a k tomu odpor ~ 220Ohm)
Proveďte malé prkénko-nastavení, abyste vše zkontrolovali. Pokud jste udělali vše správně, LED bliká a jste připraveni jít
NÁSTROJE
- Páječka- nějaká pájka- malý řezačka drátu- dremel nebo jiný rotační nástroj (jen pro řezání desky plošných spojů!)- nějaká horká lepidla- pinzeta- dráty
MATERIÁLY
- prototypování DPS (~ 4cmx6cm to zvládne)- 2x LDR- 5x 10k rezistor (2x pro LDR a 2x pro tranzistory BE, 1x LED)- 1x 330Ohm rezistor (1x NEOPIXELS)- 2x LDR- 1x LED (barva vašeho volba, místo kolečka)- 3x NEOPIXEL WS2812- 2x tranzistor (BD137 nebo podobný)- 2x dioda (1N4001 nebo podobný)- 2x mikromotor (např. z mikrokvadrokoptéry Hubsan)- 1x ATTINY85 + volitelný (doporučeno) 8PIN Zásuvka IC- 1x 1 s LIPO (použil jsem 140 Ah ze staré RC helikoptéry)- několik pinheaderů/zásuvek- shrinktube (pouzdro LDR)
Pokračujme stavbou hardwaru…
Krok 2: Hardware
Pokud se podíváte na připojená schémata, nastavení hardwaru je docela jednoduché. Pokud jste tedy schopni číst schémata a používat páječku, je to polovina triku. Podívejte se také na fotografie, přidal jsem pro vás několik poznámek.
Neposkytuji plán řezání desky plošných spojů, máte svobodu vytvořit si vlastní design (buďte kreativní a ukažte nám své drobné roboty). Umístění všech elektronických součástek je také na vás. Pár rad z mé strany:
Zkuste přesně zarovnat motory (sledujte úhel!) Místo kol používáme pouze motorový hřídel. (bude to spotřebovávat méně energie) Doporučuji umístit motory pod baterii (hmotnost) a použít LDR na přední straně (pod úhlem 45 °) spárované s LED (snažím se tuto kombinaci použít k vyhýbání se překážkám, dále jsou nutné testy).
Dále doporučuji udělat malý propojovací můstek, aby se baterie tak snadno neztratila.
Pokud je něco nejasného nebo máte nějaké otázky, zeptejte se mě. Z tohoto malého projektu neudělá mnoho senátů práci.
Krok 3: Software
Nejprve si stáhněte a nainstalujte knihovnu ADAFRUIT Neopixel
Zde je můj kód s některými hlavními popisy (také jsem přidal soubor skici). Nekomentoval jsem každý krok, protože si myslím, že to není nutné.
Nahrajte skicu na svůj ATTiny85 a bavte se s novou hračkou
Nápady na funkci "osobnost" + možná ukázky kódu jsou velmi vítané:-)
Pokud máte nějaké dotazy, klidně se ptejte.
Doufám, že jste si užili můj krátký návod a malý výlet do světa ATTINY.
/* ATTINY85-Rata jednoduchý robot sledující světlo ATTINY85. Verze 2.0, Auer Markus */
#zahrnout
#zahrnout
// 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é nastavení ()
{// upscale hodiny jinak narazíte na nějaké problémy s časováním (lib neopixel je napsán pro 16MHz) #if definováno (_AVR_ATtiny85_) if (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif
// PINMODE pinMode (LMOTOR, VÝSTUP); pinMode (RMOTOR, OUTPUT); pinMode (LLDR, INPUT); pinMode (LLDR, INPUT); // inicializace pixelů PIXEL.begin (); PIXEL.show (); zpoždění (500); // počáteční posloupnost pro (int i = 0; i
prázdná smyčka ()
{if (lightfollow () == 1) {left (); } else if (lightfollow () == 2) {vpravo (); } else if (lightfollow () == 0) {vpřed (); } emoce (); }
int lightfollow () {
int preshold = 14; int výsledek = 0; float left = 0; plovoucí doprava = 0; int vzorky = 1; // číst LDR pro (int j = 0; j <vzorky; j ++) {
vlevo = vlevo + analogové čtení (LLDR); vpravo = vpravo + (analogRead (RLDR)*calib);
}
// vypočítat výsledek (ze kterého směru vychází světlo?)
if ((vlevo/vzorky)> ((vpravo/vzorky)+prah)) {result = 2;}
else if ((vlevo/vzorky) <((vpravo/vzorky) -treshold)) {result = 1;}
else {result = 0;}
vrátit výsledek; } 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 vlevo () {
// VLEVO 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šit právo () {
// RIGHT analogWrite (LMOTOR, 255); analogWrite (RMOTOR, 150); PIXEL.setPixelColor (0, PIXEL. Color (0, 100, 0)); PIXEL.setPixelColor (2, PIXEL. Color (0, 0, 255)); PIXEL.show (); }
// to je pro další experimenty, snažím se tomu dát trochu osobnosti:-) zkouším, co by se dalo dělat, ale zatím žádné dobré nápady.
void emoce () {int emotimer = 2500; int trvání = 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 (); přestávka; případ 2: PIXEL.setPixelColor (1, PIXEL. Color ((255), (0), (0))); PIXEL.show (); přestávka; případ 3: PIXEL.setPixelColor (1, PIXEL. Color ((0), (255), (0))); PIXEL.show (); přestávka; výchozí: PIXEL.setPixelColor (1, PIXEL. Color (náhodný (0, 255), náhodný (0, 255), náhodný (0, 255))); PIXEL.show (); přestávka; }} else {PIXEL.setPixelColor (1, PIXEL. Color (25, 0, 0)); PIXEL.show (); }}
Doporučuje:
Mini IMac G4 Flat Panel - Powered by NUC: 9 Steps (with Pictures)
Mini IMac G4 Flat Panel - Powered by NUC: Úvod Prošel jsem několika projekty, které byly inspirací pro tuto stavbu. Jeden tvrdí, že je nejmenším fungujícím iMacem na světě, ale ve skutečnosti je to Raspberry Pi se systémem Linux distro s tématem MacOS a nemůže provozovat skutečný M
Převod textu na řeč Klikněte na ARMbasic Powered UChip a další ARMbasic Powered SBCs: 3 kroky
Převod textu na řeč Klikněte na ARMbasic Powered UChip a další ARMbasic Powered SBCs: Intro: Good day. Jmenuji se Tod. Jsem letecký a obranný profesionál, který je také trochu geek v srdci. Inspirace: Pochází z éry telefonních BBS, 8bitových mikrokontrolérů, osobních počítačů Kaypro/Commodore/Tandy/TI-994A, když R
HX1 -DM - upcycled Arduino DUE Powered DIY bicí automat (vyrobený s Dead Maschine MK2): 4 kroky
HX1 -DM - upcycled Arduino DUE Powered DIY Drum Machine (made with a Dead Maschine MK2): The Spec. Hybridní midi ovladač / bicí automat: Arduino DUE poháněno! 16 padů snímajících rychlost s velmi nízkou latencí 1 > ms 8 knoflíků, které uživatel může přiřadit jakémukoli příkazu Midi #CC 16ch Vestavěný sekvencer (není potřeba žádný počítač !!) MIDI vstup/výstup/funkce
ESP8266/ESP12 Witty Cloud - Arduino Powered SmartThings RGB Controller: 4 kroky
ESP8266/ESP12 Witty Cloud - Arduino Powered SmartThings RGB Controller: RGB RGB RGB všude! Komu by se v dnešní době nelíbilo mít kolem svého domova skvěle vypadající barevné světlo? Tento malý projekt předvádí ESP8266 smíchaný s ovládáním SmartThings a končí jako skutečný úhledný řadič RGB pro LED
ESP8266/ESP12 Witty Cloud - Arduino Powered SmartThings Senzor osvětlení: 4 kroky
ESP8266/ESP12 Witty Cloud - Arduino Powered SmartThings Illuminance Sensor: Nechat vaše chytré osvětlení reagovat na některé výchozí časy, jako je západ a východ slunce, nebo konkrétní čas … ne vždy odpovídá tomu, co vidí vaše oči, když jste uvnitř tvůj domov. Možná je na čase přidat senzor, který dokáže všechny ty