Mundarija:
- 1 -qadam: ATTiny va asboblar va materiallar bilan ishlashni boshlash
- 2 -qadam: Uskuna
- 3 -qadam: dasturiy ta'minot
Video: ATTiny-RAT, ATTINY bilan ishlaydigan Mini Lightfollower: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Salom odamlar, Men oxirgi ko'rsatmalarni joylashtirganimga biroz vaqt bo'ldi. Hozir ko'p narsalar miyamda bo'lyapti, lekin men ATTiny seriyali chiplar bilan "birinchi qadamlarimni" siz uchun qisqa ko'rsatmali qilib yozishga muvaffaq bo'ldim.
Men ATTINY85 namunalariga buyurtma berdim, chunki men ularni sinab ko'rmoqchi edim:-) (hamma narsalarni sinab ko'rishni yaxshi ko'radi, to'g'rimi?) Shundan so'ng men daftarimga ba'zi fikrlarni yozishni boshladim. Rostini aytsam, men qilgan birinchi narsa - bu LEDni miltillatish edi, bu har doimgidek sizning sozlamalaringiz/asboblar zanjiri ishlayotganini tekshirish uchun yaxshi boshlanishdir. Men DHT22 va SoftwareSerial bilan harorat va namlikni hisobga oluvchini ham sinab ko'rdim. Bu juda qiyin ish edi, chunki DHT kutubxonalari asosan 16 MGts soatga mo'ljallangan (agar siz shunday qilishni rejalashtirmoqchi bo'lsangiz, ichki soatni qanday oldindan o'lchashni tekshiring). Lekin men sizga kulgili narsani ko'rsatishga qaror qildim. BTW: Men siz uchun chizgan rasmlarimni yukladim, bu Rembrandt emas, lekin bu qanday qilib ahmoqona fikrni qog'ozga qanday qilib olganimni ko'rsatib beradi: -P.
Men bu loyihani iloji boricha arzonroq saqlash uchun yolg'on gapirgan narsalarni ishlatardim (men uchun). Bu kichik sarguzashtning natijasi 10-15 dollar (men uchun 3 dollar:-P)
Agar siz ATTINY bilan qiziqsangiz, o'qing.
BTW: yomon ingliz tilim uchun uzr (men ona tili emasman)
1 -qadam: ATTiny va asboblar va materiallar bilan ishlashni boshlash
Boshlash uchun sizga nima kerak bo'ladi:
- ATTiny85 chipi
- Arduino UNO yoki shunga o'xshash
-bir nechta jumper-simli yoki ATTINY dasturchi bilan bort taxtasi yoki o'zingiz Arduino uchun dasturchi-qalqon yasang (ilova qilingan rasmlarni tekshiring, avdweb.nl-dan sxemasi bor). Men buni ham qildim va bundan juda xursandman, men qilgan yagona o'zgartirish-ATTinyx4 Series uchun rozetkani qo'shganim (rasmga va pinout diagrammalariga qarang).
- Arduino IDE (bu yerdan oling)
- ArduinoIDE uchun apparat fayllari (ularni yuklab oling va o'rnating)
O'yin maydonchasiga to'g'ridan-to'g'ri ma'lumot ishlatilgan github fayllariga havola
- Arduino -ni Internet -provayder eskizi sifatida UNO -ga yuklang (bu sizning dasturchi bo'ladi)
- ushbu ko'rsatmaga (https://highlowtech.org/) yoki ushbu ko'rsatmaga (ardutronix tomonidan) amal qiling va "miltillash" eskizini sinab ko'ring (PIN kodini o'zgartiring. ATTINY rasmini mos yozuvlar sifatida ishlating! sizga oldindan bosilgan ATTINY LED) kerak bo'ladi. va buning uchun ~ 220 Ohm rezistor)
Hamma narsani tekshirish uchun kichik taxtali o'rnating. Agar siz hamma narsani to'g'ri bajargan bo'lsangiz, LED yonadi va siz borishga tayyormiz.
QUROLLAR
- lehimlantiruvchi temir- bir oz lehim- kichik sim- kesuvchi yoki boshqa aylanadigan asbob (faqat PCBni kesish uchun!)- bir nechta issiq yopishtiruvchi- cımbız- simlar
MATERIALLAR
- PCB prototipini yaratish (~ 4 sm x 6 sm)- 2 marta LDR- 5x 10k rezistor (2 marta LDR va 2x BE, 1x LED)- 1x 330Ohm rezistor (1x NEOPIXELS)- 2x LDR- 1x LED (sizning rangingiz) g'ildirak o'rniga tanlov)- 3x NEOPIXEL WS2812- 2x tranzistor (BD137 yoki shunga o'xshash)- 2x diod (1N4001 yoki shunga o'xshash)- 2x mikromotor (masalan, Hubsan mikro-kvadrokopteridan)- 1x ATTINY85 + ixtiyoriy (tavsiya etiladi) 8PIN IC rozetkasi- 1x 1s LIPO (men eski RC-vertolyotdan 140Ach ishlatganman)- ba'zi pinheads/sockets- shrinktube (LDR korpusi)
Uskunani ishlab chiqarishni davom ettiramiz …
2 -qadam: Uskuna
Agar men biriktirgan sxemalarga qarasangiz, uskunani sozlash juda oddiy. Agar siz sxemalarni o'qiy olsangiz va lehimli temirni ishlata olsangiz, bu hiylaning yarmi. Fotosuratlarni ham ko'ring, men siz uchun ba'zi eslatmalarni qo'shdim.
Men PCBni kesish rejasini bermayman, siz o'zingizning shaxsiy dizayningizni yaratishingiz mumkin (ijodiy bo'ling va bizga kichik botlaringizni ko'rsating). Barcha elektron komponentlarning joylashuvi ham sizga bog'liq. Men tomondan ba'zi maslahatlar:
Dvigatellarni aniq tekislashga harakat qiling (burchakka qarang!) Biz faqat g'ildiraklar o'rniga motor milidan foydalanamiz. (bu kam energiya sarflaydi) Men dvigatellarni batareyaning ostiga (og'irligi) qo'yishni va old tomondan (45 ° burchak ostida) LED bilan bog'langan LDR -larni ishlatishni tavsiya qilaman (men bu kombinatsiyani o'pkadan saqlanish uchun ishlataman. testlar kerak).
Bundan tashqari, men batareyani osonlikcha yo'qotib yubormaslik uchun ozgina yoqish/o'chirish moslamasini yasashni tavsiya qilaman.
Agar biror narsa aniq bo'lmasa yoki savollaringiz bo'lsa, mendan so'rang. Bu kichik loyihadan tezis chiqishiga ko'pchilikni majburlamaydi.
3 -qadam: dasturiy ta'minot
Birinchi navbatda ADAFRUIT Neopixel kutubxonasini yuklab oling va o'rnating
Bu erda mening asosiy tavsiflar bilan kodim (men ham eskiz faylini qo'shdim). Men har bir qadamni sharhlamadim, chunki bu kerak emas deb o'ylayman.
Eskizni ATTiny85 -ga yuklang va yangi o'yinchog'ingizdan zavqlaning
"Shaxsiyat" funktsiyasi uchun g'oyalar + ehtimol kod misollari juda ma'qul:-)
Agar savollar bo'lsa, bemalol so'rang.
Umid qilamanki, mening qisqa ko'rsatmali va ATTINYs olamiga qilgan kichik sayohatim sizga yoqdi.
/* ATTINY85-Rata oddiy ATTINY85 bilan ishlaydigan yorug'likli robot. 2.0 versiyasi, Auer Markus */
#qo'shing
#qo'shing
// motorlar
#define LMOTOR 0 #define RMOTOR 1 // LEDlar #dexinani belgilang PIXELPIN 2 #ni belgilang NUMPIXEL 3 // LDRs #define LLDR A2 #define RLDR A3
// boshqa emo = 0; suzuvchi kalibr; boolean emostat; uzun oldmillis; // NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel (NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800) ni aniqlang;
bo'sh o'rnatish ()
{// yuqori darajali soat, aks holda siz vaqt muammosiga duch kelasiz (neopixel lib 16 MGts uchun yozilgan) #if belgilangan bo'lsa (_AVR_ATtiny85_) if (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif
// PINMODE pinMode (LMOTOR, OUTPUT); pinMode (RMOTOR, OUTPUT); pinMode (LLDR, Kirish); pinMode (LLDR, INPUT); // PIXEL.begin () piksellarini ishga tushirish; PIXEL.show (); kechikish (500); // boshlang'ich tenglamasi (int i = 0; i
bo'sh halqa ()
{if (lightfollow () == 1) {left (); } if if (lightfollow () == 2) {right (); } if if (lightfollow () == 0) {forward (); } tuyg'u (); }
int lightfollow () {
int treshold = 14; int natijasi = 0; chapga siljish = 0; o'ngga suzish = 0; int namunalari = 1; // (int j = 0; j <namunalar; j ++) {uchun LDRlarni o'qish
chap = chap + analogRead (LLDR); o'ng = o'ng + (analogRead (RLDR)*kalibr);
}
// natijani hisoblang (yorug'lik qaysi tomondan keladi?)
agar ((chapda/namunalarda)> ((o'ngda/namunalarda)+tresholdda)) {natija = 2;}
aks holda ((chapda/namunalarda) <((o'ngda/namunalarda) -toshli)) {natija = 1;}
boshqa {natija = 0;}
natijani qaytarish; } 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 (); }
bo'sh joy chap () {
// 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 (); }
o'ng bekor () {
// 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 (); }
// bu keyingi tajribalar uchun, unga ozgina shaxsiyat berishga harakat qiladi:-) Men nima qila olishimni sinab ko'raman, lekin hali yaxshi fikrlar yo'q.
bo'sh tuyg'u () {int emotimer = 2500; int davomiyligi = tasodifiy (250, 750); if (millis () - oldmillis> emotimer) {oldmillis = millis (); emo = tasodifiy (1, 4); } agar (millis () - oldmillis> davomiyligi) {emostate =! emostate; } if (emostate == true) {switch (emo) {1 -holat: PIXEL.setPixelColor (1, PIXEL. Color ((255), (255), (255)))); PIXEL.show (); tanaffus; 2 -holat: PIXEL.setPixelColor (1, PIXEL. Color ((255), (0), (0)))); PIXEL.show (); tanaffus; 3 -holat: PIXEL.setPixelColor (1, PIXEL. Color ((0), (255), (0)))); PIXEL.show (); tanaffus; standart: PIXEL.setPixelColor (1, PIXEL. Color (tasodifiy (0, 255), tasodifiy (0, 255), tasodifiy (0, 255)))); PIXEL.show (); tanaffus; }} boshqa {PIXEL.setPixelColor (1, PIXEL. Color (25, 0, 0))); PIXEL.show (); }}
Tavsiya:
Batareya bilan ishlaydigan suv yig'uvchi sath sensori: 7 qadam (rasmlar bilan)
Batareyadan ishlaydigan suv yig'uvchi sath sensori: Uyimizda tomga tushgan yomg'irdan oziqlanadigan va hojatxona, kir yuvish mashinasi va bog'da sug'oriladigan o'simliklar uchun ishlatiladigan suv idishi bor. So'nggi uch yil davomida yoz juda quruq edi, shuning uchun biz tankdagi suv sathini kuzatdik. S
Arduino bilan ishlaydigan rasmli robot: 11 qadam (rasmlar bilan)
Arduino bilan ishlaydigan rasmli robot: Siz robot hayratlanarli rasm va san'at qila oladimi, deb o'ylab ko'rganmisiz? Ushbu loyihada men buni Arduino bilan ishlaydigan rasmli robot yordamida amalga oshirishga harakat qilaman. Maqsad - robot o'z qo'llari bilan rasm chizishi va texnik vositalardan foydalanishi
Batareya bilan ishlaydigan ofis. Quyosh panellari va shamol turbinasi: Sharq/G'arbni avtomatik almashtirish bilan quyosh tizimi: 11 qadam (rasmlar bilan)
Batareya bilan ishlaydigan ofis. Quyosh tizimi Sharq/G'arbning avtomatik panellari va shamol turbinasi bilan almashinuvi bilan: Loyiha: 200 kvadrat metrli ofis batareyali bo'lishi kerak. Ofis, shuningdek, ushbu tizim uchun zarur bo'lgan barcha tekshirgichlar, batareyalar va komponentlarni o'z ichiga olishi kerak. Quyosh va shamol energiyasi batareyalarni zaryad qiladi. Faqat kichik muammo bor
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'l bilan amalga oshirildi: 8 qadam (rasmlar bilan)
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'lga qo'yildi: 1 yil davomida 2 xil joyda muvaffaqiyatli ishlaganimdan so'ng, men quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasining loyiha rejalari bilan bo'lishaman va uning qanday qilib uzoq vaqt yashay oladigan tizimga aylanganini tushuntiraman. quyosh energiyasidan o'tgan davrlar. Agar ergashsangiz
Nutq uchun matn ARMbasic bilan ishlaydigan UChip va boshqa ARMbasic bilan ishlaydigan SBC -ni bosing: 3 qadam
Nutq uchun matn ARMbasic bilan ishlaydigan UChip va boshqa ARMbasic bilan ishlaydigan SBC -ni bosing: Kirish: Xayrli kun. Mening ismim Tod. Men aerokosmik va mudofaa sohasidagi professionalman, lekin u ham yuragida g'ayratli. Ilhom: BBS, 8-bitli mikrokontrollerlar, Kaypro/Commodore/Tandy/TI-994A shaxsiy kompyuterlari davridan kelib chiqqan holda, R