Orodha ya maudhui:

ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 Hatua
ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 Hatua

Video: ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 Hatua

Video: ATTiny-RAT, ATTINY Powered Mini Lightfollower: 3 Hatua
Video: How to use the Atmel ATTINY10 Microcontroller 2024, Novemba
Anonim
ATTiny-panya, ATTINY Powered Mini Lightfollower
ATTiny-panya, ATTINY Powered Mini Lightfollower
ATTiny-RAT, ATTINY Powered Mini Lightfollower
ATTiny-RAT, ATTINY Powered Mini Lightfollower
ATTiny-RAT, ATTINY Powered Mini Lightfollower
ATTiny-RAT, ATTINY Powered Mini Lightfollower
ATTiny-panya, ATTINY Powered Mini Lightfollower
ATTiny-panya, ATTINY Powered Mini Lightfollower

Habari watu, Imekuwa ni muda tangu nilipotuma barua yangu ya mwisho kufundishwa. Kweli kuna mambo mengi yanazunguka kichwani mwangu sasa lakini niliweza kuandika "hatua zangu za kwanza" na Mfululizo wa chips za ATTiny kwa kifupi hiki kinachoweza kufundishwa kwako.

Niliamuru sampuli zingine za ATTINY85 kwa sababu tu nilitaka kuzijaribu:-) (kila mtu anapenda kupima vitu, sivyo?). Baada ya hapo nilianza kuchora maoni kadhaa kwenye daftari langu. Kusema kweli kitu cha kwanza nilichofanya ni kupepesa mwangaza wa LED kama kawaida mwanzo mzuri wa kuangalia ikiwa usanidi / zana yako ya zana inafanya kazi. Nilijaribu pia kumbukumbu ya joto na unyevu na DHT22 na SoftwareSerial. Hiyo ilikuwa ngumu kwa sababu Maktaba ya DHT ni hasa kwa saa ya 16Mhz (ikiwa una mpango wa kufanya kitu kama hicho, angalia jinsi ya kuweka alama ya ndani). Lakini niliamua kukuonyesha kitu ambacho ni sawa, funnier tu. BTW: Nilipakia moja ya michoro yangu kwako, sio Rembrandt lakini itakuonyesha jinsi ninavyopata wazo hili (la kweli) la kijinga kwenye kipande cha karatasi: -P.

Nilitumia vitu tu ambavyo nilikuwa nimelala karibu ili kuweka mradi huu kwa bei rahisi iwezekanavyo (kwangu). Matokeo ya hii adventure ndogo ni "roboti ndogo ya wafuasi" mzuri kwa karibu 10-15 $ (3 $ kwangu: -P)

Kwa hivyo ikiwa una nia ya KUJITAMBUA mwenyewe soma zaidi.

BTW: samahani kwa english yangu mbaya (mimi sio mzungumzaji asili)

Hatua ya 1: Kuanza na ATTiny & Zana na Vifaa

Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa
Kuanza na ATTiny & Zana na Vifaa

Nini utahitaji kuanza:

- Chip ya ATTiny85

- Arduino UNO au sawa

- ubao wa abread na waya wa kuruka au programu ya ATTINY au fanya programu ya ngao ya Arduino mwenyewe (angalia picha zilizoambatanishwa, kuna mpango kutoka kwa avdweb.nl). Pia nilifanya hii na nimefurahi sana nayo marekebisho tu ambayo nilifanya ni kwamba niliongeza tundu kwa Mfululizo wa ATTinyx4 (rejelea picha na michoro ya pinout).

- IDE ya Arduino (pata hapa)

- faili za vifaa vya ArduinoIDE (pakua na usakinishe)

Maelezo-Unganisha kwa kiunga cha uwanja wa kucheza wa moja kwa moja kwenye faili za github nilizotumia

- pakia Arduino kama mchoro wa ISP kwenye UNO (hii itakuwa programu yako)

- fuata maagizo haya (https://highlowtech.org/) au hii inayoweza kufundishwa (na ardutronix) na ujaribu mchoro wa "blink" (tengeneza PIN Nr. tumia picha ya ATTINY kama rejeleo! na Mpingaji ~ ~ 220Ohm kwa hiyo)

Tengeneza usanidi mdogo wa mkate ili kuangalia kila kitu. Ikiwa umefanya kila kitu sawa LED itaangaza na uko tayari kwenda

VIFAA

- Soldering Iron - solder- ndogo ya kukata waya- dremel au chombo kingine cha rotary (kwa kukata tu PCB!) - waya wa moto

VIFAA

- prototyping PCB (~ 4cmx6cm itaifanya) - 2x LDR- 5x 10k Resistor (2x kwa LDRs na 2x kwa transistors BE, 1x LED) - 1x 330Ohm Resistor (1x NEOPIXELS) - 2x LDR- 1x LED (rangi ya yako chaguo, badala ya gurudumu la kukanda) - 3x NEOPIXEL WS2812- 2x Transistor (BD137 au sawa) - 2x Diode (1N4001 au sawa) - 2x micromotor (km kutoka Hubsan micro-quadcopter) - 1x ATTINY85 + hiari (ilipendekeza) 8PIN Soketi ya IC- 1x 1s LIPO (nilitumia 140Ah kutoka kwa helikopta ya zamani ya RC) - vichwa vya kichwa / soketi- shrinktube (nyumba ya LDR)

Tuendelee kwa kujenga vifaa…

Hatua ya 2: Vifaa

Vifaa
Vifaa
Vifaa
Vifaa
Vifaa
Vifaa

Ikiwa unatazama skimu nilizoziambatanisha, usanidi wa vifaa ni rahisi sana. Kwa hivyo ikiwa una uwezo wa kusoma hesabu na kutumia chuma cha kutengeneza, hiyo ni nusu ya ujanja. Pia angalia picha, nimekuongezea vidokezo.

Sitoi mpango wa kukata PCB, unayo uhuru wa kutengeneza muundo wako mwenyewe (kuwa mbunifu na utuonyeshe Boti zako ndogo). Uwekaji wa componets zote za elektroniki pia ni juu yako. Vidokezo kadhaa kutoka upande wangu:

Jaribu kuainisha gari kwa usahihi (angalia pembe!) Tunatumia tu motorshaft badala ya magurudumu. (hii itatumia nguvu kidogo) Ninapendekeza kuweka motors chini ya betri (uzani) na kutumia LDRs mbele (45 ° angled) iliyounganishwa na kwenye LED (najaribu kutumia mchanganyiko huu kwa kuzuia vizuizi, zaidi vipimo vinahitajika).

Zaidi ya hayo mimi hupendekeza kutengeneza kitundu kidogo cha kuzima / kuzima ili betri isipotee rahisi.

Ikiwa kuna chochote haijulikani au ikiwa una maswali, niulize tu. Haitafanya seneti nyingi kufanya nadharia kutoka kwa mradi huu mdogo.

Hatua ya 3: Programu

Programu
Programu
Programu
Programu

1 ya yote pakua na usakinishe Maktaba ya Neopixel ya ADAFRUIT

Hapa kuna kificho changu na maelezo kadhaa makuu (pia nimeongeza faili ya mchoro). Sikuzungumza kila hatua kwa sababu nadhani sio lazima.

Pakia mchoro kwenye ATTiny85 yako na ufurahi na toy yako mpya

Mawazo ya kazi ya "utu" + labda mifano ya kificho inakaribishwa sana:-)

Ikiwa kuna maswali yoyote, jisikie huru kuuliza.

Natumai ulifurahiya safari yangu fupi ya kufundisha na safari ndogo kwenda kwenye ulimwengu wa WAKATILI.

/ * ATTINY85-Rata rahisi ATTINY85 inayotumia mwangaza kufuata robot. Toleo 2.0, na Auer Markus * /

# pamoja

# pamoja

// motors

#fafanua LMOTOR 0 #fafanua RMOTOR 1 // LEDs #fafanua PIXELPIN 2 #fafanua NUMPIXEL 3 // LDRs #fafanua LLDR A2 #fafanua RLDR A3

// nyingine emo emo = 0; kuelea calib; emostate ya boolean; oldmillis ndefu; // fafanua NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel (NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800);

kuanzisha batili ()

{// upscale saa nyingine utakumbana na shida za nyakati (lib ya neopixel imeandikwa kwa 16MHz) # ikiwa imefafanuliwa (_AVR_ATtiny85_) ikiwa (F_CPU == 16000000) saa_prescale_set (clock_div_1); # mwisho

// PINMODE pinMode (LMOTOR, OUTPUT); pinMode (RMOTOR, OUTPUT); pinMode (LLDR, INPUT); pinMode (LLDR, INPUT); // anzisha saizi PIXEL. anza (); PIXEL. Onyesha (); kuchelewesha (500); // kuanza kwa (int i = 0; i

kitanzi batili ()

{ikiwa (kufuata kidogo () == 1) {kushoto (); } vingine ikiwa (kufuata kidogo () == 2) {kulia (); } vingine ikiwa (kufuata kidogo () == 0) {mbele (); mhemko (); }

kufuatia mwanga () {

kizingiti = 14; matokeo = 0; kuelea kushoto = 0; kuelea kulia = 0; sampuli za int = 1; // soma LDRs za (int j = 0; j <sampuli; j ++) {

kushoto = kushoto + AnalogSoma (LLDR); kulia = kulia + (analogRead (RLDR) * calib);

}

// hesabu matokeo (nuru inatoka kwa mwelekeo gani?)

ikiwa ((kushoto / sampuli)> ((kulia / sampuli) + kizingiti)) {matokeo = 2;}

vinginevyo ikiwa ((kushoto / sampuli) <((kulia / sampuli) - kizingiti)) {matokeo = 1;}

mwingine {matokeo = 0;}

matokeo ya kurudi; } batili mbele () {// Sambaza AnalogWrite (LMOTOR, 230); AnalogWrite (RMOTOR, 230); PIXEL.setPixelColor (0, PIXEL. Color (0, 0, 255)); PIXEL.setPixelColor (2, PIXEL. Color (0, 0, 255)); PIXEL. Onyesha (); }

tupu kushoto () {

// Analog ya KUSHOTO Andika (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. Onyesha (); }

batili kulia () {

// Analog ya KULIA Andika (LMOTOR, 255); AnalogWrite (RMOTOR, 150); PIXEL.setPixelColor (0, PIXEL. Color (0, 100, 0)); PIXEL.setPixelColor (2, PIXEL. Color (0, 0, 255)); PIXEL. Onyesha (); }

// hii ni kwa majaribio zaidi, kujaribu kumpa huyu utu kidogo:-) i´m kupima kile kinachoweza kufanya, lakini bado hakuna maoni mazuri.

hisia batili () {int emotimer = 2500; muda wa ndani = nasibu (250, 750); ikiwa (millis () - oldmillis> emotimer) {oldmillis = millis (); emo = nasibu (1, 4); } ikiwa (millis () - oldmillis> muda) {emostate =! emostate; } ikiwa (emostate == kweli) {switch (emo) {kesi 1: PIXEL.setPixelColor (1, PIXEL. Color ((255), (255), (255))); PIXEL. Onyesha (); kuvunja; kesi 2: PIXEL.setPixelColor (1, PIXEL. Color ((255), (0), (0))); PIXEL. Onyesha (); kuvunja; kesi 3: PIXEL.setPixelColor (1, PIXEL. Color ((0), (255), (0))); PIXEL. Onyesha (); kuvunja; chaguo-msingi: PIXEL.setPixelColor (1, PIXEL. Color (random (0, 255), random (0, 255), random (0, 255))); PIXEL. Onyesha (); kuvunja; }} mwingine {PIXEL.setPixelColor (1, PIXEL. Color (25, 0, 0)); PIXEL. Onyesha (); }}

Ilipendekeza: