
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48




Բարև ժողովուրդ, Որոշ ժամանակ անց ես տեղադրեցի իմ վերջին հրահանգը: Դե, հիմա շատ բաներ են պտտվում իմ գլխում, բայց ես կարողացա փաստաթղթավորել իմ «առաջին քայլերը» ATP- ի շարքի չիպերի հետ այս կարճ ուսանելի ձեզ համար:
Ես պատվիրեցի ATTINY85- ի որոշ նմուշներ միայն այն պատճառով, որ ուզում էի դրանք փորձարկել:-) (բոլորը սիրում են իրերը փորձարկել, այնպես չէ՞): Դրանից հետո ես սկսեցի որոշ գաղափարներ գծել իմ տետրում: Անկեղծ ասած, առաջին բանը, որ ես արեցի, թարթելն էր LED- ի, որը, ինչպես միշտ, լավ սկիզբ էր `ստուգելու, թե արդյոք ձեր տեղադրումը/գործիքաշղթան աշխատում է: Ես նաև փորձեցի ջերմաստիճանի և խոնավության անտառահատ DHT22- ի և SoftwareSerial- ի միջոցով: Դա բարդ էր, քանի որ DHT գրադարանները հիմնականում 16 ՄՀց ժամացույցի համար են (եթե մտադիր եք նման բան անել, ստուգեք, թե ինչպես նախնական չափել ներքին ժամացույցը): Բայց ես որոշեցի ձեզ ցույց տալ մի բան, որն ավելի լավ է, ավելի ծիծաղելի: -Պ.
Ես օգտագործում էի միայն այն, ինչ ունեի պառկած ՝ այս նախագիծը հնարավորինս էժան պահելու համար (ինձ համար): Այս փոքրիկ արկածախնդրության արդյունքը մի գեղեցիկ փոքրիկ «հետևորդ ռոբոտ» է ՝ մոտ 10-15 դոլարով (ինձ համար 3 դոլար:-P)
Այսպիսով, եթե ձեզ հետաքրքրում է ATTINY- ը, պարզապես կարդացեք ավելին:
BTW. Կներեք իմ վատ անգլերենի համար (ես բնիկ խոսող չեմ)
Քայլ 1: Սկսենք աշխատել ATTiny- ի և գործիքների և նյութերի հետ




Այն, ինչ ձեզ հարկավոր կլինի սկսելու համար
- ATTiny85 չիպ
- Arduino UNO կամ նմանատիպ
-abreadboard որոշ jumper-wire կամ ATTINY ծրագրավորողով կամ Arduino- ի համար ինքներդ ծրագրավորող-վահան պատրաստեք (ստուգեք կից նկարները, avdweb.nl- ից կա սխեմատիկ): Ես նաև պատրաստեցի այս մեկը և ես իսկապես գոհ եմ դրանից, միակ փոփոխությունը, որ կատարեցի, այն էր, որ ես ավելացրի մի վարդակ ATTinyx4 շարքի համար (տե՛ս նկարի և գծապատկերների դիագրամները):
- Arduino IDE (ստացեք այստեղ)
- ArduinoIDE- ի սարքավորումների ֆայլեր (ներբեռնեք և տեղադրեք դրանք)
Տեղեկատվական հղում դեպի խաղահրապարակ ուղղակի հղում դեպի օգտագործված github ֆայլերը
- բեռնեք Arduino- ն որպես ISP ուրվագիծ ՄԱԿ -ում (սա կլինի ձեր ծրագրավորողը)
- հետևեք այս հրահանգին (https://highlowtech.org/) կամ այս հրահանգին (ardutronix- ի կողմից) և փորձեք «թարթել» ուրվագիծը (փոփոխեք PIN- ի համարը. որպես հղում օգտագործեք ATTINY պատկերը: Ձեզ անհրաժեշտ կլինի նախապես փայլեցված ATTINY LED և դրա համար 220 hm Օմ դիմադրություն)
Ստեղծեք մի փոքրիկ տախտակ `ամեն ինչ ստուգելու համար: Եթե ամեն ինչ ճիշտ եք արել, LED- ը կթարթվի, և դուք պատրաստ եք գնալ
ԳՈՐOOLԻՔՆԵՐ
- oldոդման երկաթ- ինչ-որ զոդում- մի փոքր մետաղալար- դրեմել կամ այլ պտտվող գործիք (պարզապես PCB- ն կտրելու համար)- որոշ տաք սոսինձ- պինցետ- լարեր
ՆՅՈԹԵՐ
- PCB- ի նախատիպավորում (~ 4cmx6cm դա անելու է)- 2x LDR- 5x 10k Resistor (2x LDR- երի համար և 2x տրանզիստորների համար BE, 1x LED)- 1x 330 Օմ դիմադրություն (1x NEOPIXELS)- 2x LDR- 1x LED (ձեր գույնը ընտրություն ՝ պտուտակավոր անիվի փոխարեն)- 3x NEOPIXEL WS2812- 2x տրանզիստոր (BD137 կամ նմանատիպ)- 2x դիոդ (1N4001 կամ նմանատիպ)- 2x միկրո շարժիչ (օրինակ ՝ Hubsan միկրոկառավարիչից)- 1x ATTINY85 + ըստ ցանկության (խորհուրդ է տրվում) 8PIN IC վարդակից- 1x 1s LIPO (ես օգտագործել եմ 140Ah հին RC- ուղղաթիռից)- որոշ սափրագլուխներ/վարդակներ- shrinktube (LDR բնակարան)
Եկեք շարունակենք սարքավորումների կառուցումը …
Քայլ 2: Սարքավորումներ



Եթե դուք նայեք իմ կողմից կցված սխեմաներին, ապարատային տեղադրումը բավականին պարզ է: Այսպիսով, եթե դուք կարողանում եք կարդալ սխեմաներ և օգտագործել եռակցման երկաթ, ապա դա հնարքի կեսն է: Նաև նայեք լուսանկարներին, ես ձեզ համար որոշ նշումներ ավելացրեցի:
Ես PCB- ն կտրելու ծրագիր չեմ տրամադրում, դուք ունեք ձեր սեփական դիզայնը պատրաստելու ազատություն (եղեք ստեղծագործական և ցույց տվեք ձեր Փոքրիկ բոտերը): Բոլոր էլեկտրոնային բաղադրիչների տեղադրումը նույնպես ձերն է: Որոշ հուշումներ իմ կողմից.
Փորձեք ճշգրտորեն դասավորել շարժիչները (դիտեք անկյունը): մենք անիվների փոխարեն օգտագործում ենք միայն շարժիչի լիսեռը: (սա ավելի քիչ էներգիա կծախսի) խորհուրդ եմ տալիս շարժիչները տեղադրել մարտկոցի տակ (քաշ) և օգտագործել LDR- ները առջևում (45 ° անկյան տակ), որոնք զուգակցված են LED- ի հետ (ես փորձում եմ օգտագործել այս համադրությունը խոչընդոտներից խուսափելու համար): անհրաժեշտ են թեստեր)
Ավելին, ես խորհուրդ եմ տալիս մի փոքր միացնել/անջատելու թռիչք, որպեսզի մարտկոցը այդքան հեշտ չկորչի:
Եթե որևէ անհասկանալի բան կա կամ եթե հարցեր ունեք, պարզապես հարցրեք ինձ: Շատ ծերեր չեն ստիպի այս փոքրիկ նախագծից թեզ անել:
Քայլ 3: Softwareրագրակազմ


Ներբեռնեք և տեղադրեք ADAFRUIT Neopixel գրադարանը
Ահա իմ ծածկագիրը ՝ որոշ հիմնական նկարագրություններով (ես ավելացրել եմ նաև էսքիզների ֆայլը): Ես չեմ մեկնաբանել յուրաքանչյուր քայլ, քանի որ կարծում եմ, որ դա անհրաժեշտ չէ:
Վերբեռնեք ուրվագիծը ձեր ATTiny85- ում և զվարճացեք ձեր նոր խաղալիքով
«Անձ» գործառույթի գաղափարներ + գուցե ծածկագրային օրինակները շատ ողջունելի են:-)
Եթե կան հարցեր, ազատ զգացեք:
Հուսով եմ, որ ձեզ դուր եկավ իմ կարճ ուսանելի և փոքրիկ ուղևորությունը ATTINY- ների աշխարհ:
/* ATTINY85-Rata պարզ ATTINY85 սնուցող թեթև հետևող ռոբոտ: Տարբերակ 2.0, Auer Markus */
#ներառում
#ներառում
// շարժիչներ
#define LMOTOR 0 #define RMOTOR 1 // LEDs #define PIXELPIN 2 #define NUMPIXEL 3 // LDRs #define LLDR A2 #define RLDR A3
// otherint emo = 0; բոց տրամաչափ; բուլյան emostate; երկար ծերուկ; // սահմանել NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel (NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800);
դատարկ կարգավորում ()
{// բարձրակարգ ժամացույց այլ դեպքում կհանդիպեք որոշ ժամանակային խնդիրների (նորագոյն պիքսելը գրված է 16 ՄՀց հաճախականությամբ) #եթե սահմանված է (_AVR_ATtiny85_) եթե (F_CPU == 16000000) clock_prescale_set (clock_div_1); #էնդիֆ
// PINMODE pinMode (LMOTOR, OUTPUT); pinMode (RMOTOR, OUTPUT); pinMode (LLDR, INPUT); pinMode (LLDR, INPUT); // սկզբնականացնել պիքսելները PIXEL.begin (); PIXEL.show (); ուշացում (500); // startsequence for (int i = 0; i
դատարկ շրջան ()
{if (lightfollow () == 1) {ձախ (); } else if (lightfollow () == 2) {աջ (); } else if (lightfollow () == 0) {առաջ (); } զգացմունք (); }
int lightfollow () {
int շեմ = 14; int արդյունք = 0; բոց ձախ = 0; բոց աջ = 0; int նմուշներ = 1; // կարդալ LDR- ներ (int j = 0; j <նմուշների; j ++) {
ձախ = ձախ + analogRead (LLDR); աջ = աջ + (analogRead (RLDR)*calib);
}
// հաշվարկել արդյունքը (ո՞ր ուղղությունից է լույսը գալիս)
եթե ((ձախ/նմուշներ)> ((աջ/նմուշներ)+շեմ)) {արդյունք = 2;}
այլապես, եթե ((ձախ/նմուշներ) <((աջ/նմուշներ) -շեմ)) {արդյունք = 1;}
այլ {արդյունք = 0;}
վերադարձի արդյունք; } void 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 (); }
դատարկ ձախ () {
// LEFT 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 (); }
դատարկ իրավունք () {
// 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 (); }
// սա հետագա փորձերի համար է ՝ փորձելով այս մարդուն տալ մի փոքր անհատականություն.-) Ես փորձարկում եմ այն, ինչ կարող էր անել, բայց դեռ լավ գաղափարներ չկան:
դատարկ հույզ () {int emotimer = 2500; int տևողություն = պատահական (250, 750); եթե (millis () - oldmillis> emotimer) {oldmillis = millis (); emo = պատահական (1, 4); } if (millis () - oldmillis> տևողություն) {emostate =! emostate; } if (emostate == true) {switch (emo) {case 1: PIXEL.setPixelColor (1, PIXEL. Color ((255), (255), (255))); PIXEL.show (); ընդմիջում; գործ 2: PIXEL.setPixelColor (1, PIXEL. Color ((255), (0), (0))); PIXEL.show (); ընդմիջում; գործ 3: PIXEL.setPixelColor (1, PIXEL. Color ((0), (255), (0))); PIXEL.show (); ընդմիջում; կանխադրված ՝ PIXEL.setPixelColor (1, PIXEL. Color (պատահական (0, 255), պատահական (0, 255), պատահական (0, 255))); PIXEL.show (); ընդմիջում; }} else {PIXEL.setPixelColor (1, PIXEL. Color (25, 0, 0)); PIXEL.show (); }}
Խորհուրդ ենք տալիս:
Retro Arcade - (Full Size Powered by Raspberry Pi) ՝ 8 քայլ

Retro Arcade - (Full Size Powered by Raspberry Pi). Սկզբում ուզում էի շնորհակալություն հայտնել ձեզ այս Retro Arcade համակարգի կառուցման ուղեցույցը դիտելու համար: Ես վերցնում եմ ավելի հին արկադային տուփ և տեղադրում այն առանձին կաբինետում ՝ 24 դյույմանոց լայն էկրանով մոնիտորով: Այս ուղեցույցի չափումները դժվար է տալ
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: 11 քայլ (նկարներով)

Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: Այս նախագիծը իրականացնում է 20x10 պիքսել WS2812 հիմքով LED էկրան ՝ 78x35 սմ չափսերով, որը կարելի է հեշտությամբ տեղադրել հյուրասենյակում ՝ ռետրո խաղեր խաղալու համար: Այս մատրիցայի առաջին տարբերակը կառուցվել է 2016 թվականին և վերակառուցվել շատ այլ մարդկանց կողմից: Այս փորձառու
Muscle Powered Flappy Bird: 9 քայլ (նկարներով)

Մկաններով սնուցվող Flappy Bird. Դուք կարող եք հիշել, երբ Flappy Bird- ը փոթորկի ենթարկեց աշխարհը ՝ ի վերջո դառնալով այնքան հայտնի: Ստեղծողը այն հեռացրեց հավելվածների խանութներից `խուսափելու համար անցանկալի հրապարակայնությունից: Սա Flappy Bird- ն է, որը դուք երբևէ չէիք տեսել. դարակից մի քանիսը համատեղելով
Խոսքի տեքստ Սեղմեք ARMbasic Powered UChip- ի և ARMbasic Powered SBC- ի վրա ՝ 3 քայլ

Text to Speech Սեղմեք ARMbasic Powered UChip- ի և ARMbasic Powered SBC- ների վրա: Ներածություն. Բարի օր: Իմ անունը Թոդ է: Ես տիեզերագնացության և պաշտպանության մասնագետ եմ, որը նաև հոգու խորքում է: Ոգեշնչում. Շնորհավորում եմ dial-up BBS- ի, 8-բիթանոց միկրոկոնտրոլերների դարաշրջանից, Kaypro/Commodore/Tandy/TI-994A անհատական համակարգիչներից, երբ R
Տնային ավտոմատացում Քայլ առ քայլ Wemos D1 Mini- ի միջոցով ՝ PCB դիզայնով. 4 քայլ

Տնային ավտոմատացում Wemos D1 Mini- ի միջոցով PCB դիզայնով. Տնային ավտոմատացում Քայլ առ քայլ Wemos D1 Mini- ի միջոցով ՝ PCB դիզայնով: Մի քանի շաբաթ առաջ մենք rootaid.com կայքում հրատարակեցինք «Տնային ավտոմատացում ՝ օգտագործելով ազնվամորի Pi» ձեռնարկը, որը լավ ընդունվեց հոբբիստների և քոլեջի ուսանողներ: Հետո եկավ մեր անդամներից մեկը