Daftar Isi:
- Langkah 1: Memulai Dengan ATTiny & Alat & Bahan
- Langkah 2: Perangkat Keras
- Langkah 3: Perangkat Lunak
Video: ATTiny-RAT, Pengikut Cahaya Mini Bertenaga ATTINY: 3 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Hai teman-teman, sudah lama sejak saya memposting instruksi terakhir saya. Nah ada banyak hal yang terjadi di kepala saya sekarang, tetapi saya berhasil mendokumentasikan "langkah pertama" saya dengan chip Seri ATTiny dalam instruksi singkat ini untuk Anda.
Saya memesan beberapa sampel ATTINY85 hanya karena saya ingin mengujinya:-) (semua orang suka menguji sesuatu, kan?). Setelah itu saya mulai menggambar beberapa ide ke dalam buku catatan saya. Sejujurnya hal pertama yang saya lakukan adalah mengedipkan LED yang seperti biasa merupakan awal yang baik untuk memeriksa apakah pengaturan/rantai alat Anda berfungsi. Saya juga mencoba pencatat suhu dan kelembaban dengan DHT22 dan SoftwareSerial. Itu rumit karena Perpustakaan DHT terutama untuk jam 16Mhz (jika Anda berencana untuk melakukan sesuatu seperti itu, periksa cara melakukan pra-skala jam internal). Tapi saya memutuskan untuk menunjukkan sesuatu yang, yah, lebih lucu. BTW: Saya mengunggah salah satu gambar saya untuk Anda, itu bukan Rembrandt tetapi itu akan menunjukkan kepada Anda bagaimana saya mendapatkan ide (benar-benar) bodoh ini ke selembar kertas: -P.
Saya hanya menggunakan barang-barang yang saya miliki untuk menjaga proyek ini semurah mungkin (untuk saya). Hasil dari petualangan kecil ini adalah "robot lightfollower" kecil yang menyenangkan dengan harga sekitar 10-15$ (3$ untuk saya:-P)
Jadi, jika Anda sendiri tertarik dengan ATTINY, baca lebih lanjut.
BTW: maaf untuk bahasa Inggris saya yang buruk (saya bukan penutur asli)
Langkah 1: Memulai Dengan ATTiny & Alat & Bahan
Apa yang Anda perlukan untuk memulai:
- sebuah chip ATTiny85
- Arduino UNO atau sejenisnya
- papan tempat memotong dengan beberapa kabel jumper atau pemrogram ATTINY atau membuat perisai pemrogram untuk Arduino sendiri (periksa gambar terlampir, ada skema dari avdweb.nl). Saya juga membuat yang ini dan saya sangat senang dengan itu satu-satunya modifikasi yang saya buat adalah saya menambahkan soket untuk Seri ATTinyx4 (lihat gambar dan diagram pinout).
- Arduino IDE (dapatkan di sini)
- file perangkat keras untuk ArduinoIDE (unduh dan instal)
Info-Tautan ke taman bermainTautan langsung ke file github yang saya gunakan
- muat Arduino sebagai sketsa ISP ke UNO (ini akan menjadi programmer Anda)
- ikuti instruksi ini (https://highlowtech.org/) atau instruksi ini (oleh ardutronix) dan coba sketsa "berkedip" (modifikasi PIN Nr. gunakan gambar ATTINY sebagai referensi! Anda akan memerlukan ATTINY a LED yang sudah di-flash dan resistor ~ 220Ohm untuk itu)
Buat pengaturan papan tempat memotong roti kecil untuk memeriksa semuanya. Jika Anda telah melakukan semuanya dengan benar, LED akan berkedip dan Anda siap untuk pergi
PERALATAN
- Besi Solder- beberapa solder- pemotong kawat kecil- dremel atau alat putar lainnya (hanya untuk memotong PCB!)- beberapa lem panas- pinset- kabel
BAHAN
- prototyping PCB (~4cmx6cm akan melakukannya)- 2x LDR- Resistor 5x 10k (2x untuk LDR dan 2x untuk transistor BE, 1x LED) - Resistor 1x 330Ohm (1x NEOPIXELS)- 2x LDR- 1x LED (warna Anda pilihan, bukan roda kastor)- 3x NEOPIXEL WS2812- 2x Transistor (BD137 atau serupa)- 2x Diode (1N4001 atau serupa)- 2x mikromotor (misalnya dari mikro-quadcopter Hubsan)- 1x ATTINY85 + opsional (disarankan) 8PIN IC Socket- 1x 1s LIPO (saya menggunakan 140Ah dari RC-helikopter lama)- beberapa pinheader/soket- shrinktube (LDR housing)
Mari kita lanjutkan dengan membangun perangkat keras…
Langkah 2: Perangkat Keras
Jika Anda melihat skema yang saya lampirkan, pengaturan perangkat kerasnya cukup sederhana. Jadi jika Anda dapat membaca skema dan menggunakan besi solder, itu setengah trik. Lihat juga fotonya, saya menambahkan beberapa catatan untuk Anda.
Saya tidak memberikan rencana untuk memotong PCB, Anda memiliki kebebasan untuk membuat desain Anda sendiri (berkreasilah dan tunjukkan kepada kami Tiny Bot Anda). Penempatan semua komponen elektronik juga terserah Anda. Beberapa petunjuk dari sisi saya:
Cobalah untuk menyelaraskan motor dengan tepat (perhatikan sudutnya!) Kami hanya menggunakan poros motor, bukan roda. (ini akan mengkonsumsi lebih sedikit energi) Saya sarankan untuk menempatkan motor di bawah baterai (berat) dan menggunakan LDR di bagian depan (sudut 45 °) dipasangkan dengan LED (saya mencoba menggunakan kombinasi ini untuk menghindari rintangan, selanjutnya tes diperlukan).
Selanjutnya saya sarankan untuk membuat jumper on/off sedikit agar baterai tidak mudah hilang.
Jika ada sesuatu yang tidak jelas atau jika Anda memiliki pertanyaan, tanyakan saja kepada saya. Itu tidak akan membuat banyak akal membuat tesis dari proyek kecil ini.
Langkah 3: Perangkat Lunak
Pertama-tama unduh dan instal Perpustakaan Neopiksel ADAFRUIT
Ini kode saya dengan beberapa deskripsi utama (saya juga menambahkan file sketsa). Saya tidak mengomentari setiap langkah karena saya pikir itu tidak perlu.
Unggah sketsa ke ATTiny85 Anda dan bersenang-senanglah dengan mainan baru Anda
Ide untuk fungsi "kepribadian" + mungkin contoh kode sangat diterima:-)
Jika ada pertanyaan, jangan ragu untuk bertanya.
Saya harap Anda menikmati instruksi singkat saya dan perjalanan kecil ke dunia ATTINY.
/* ATTINY85-Rata robot pengikut cahaya bertenaga ATTINY85 sederhana. Versi 2.0, oleh Auer Markus */
#termasuk
#termasuk
//motor
#define LMOTOR 0 #define RMOTOR 1 //LEDs #define PIXELPIN 2 #define NUMPIXEL 3 //LDRs #define LLDR A2 #define RLDR A3
//emosi lain = 0; kalib mengambang; emostat boolean; milis lama; //mendefinisikan NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel(NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800);
batalkan pengaturan()
{ //jam kelas atas jika tidak, Anda akan menemukan beberapa masalah pengaturan waktu (lib neopixel ditulis untuk 16MHz) #if didefinisikan (_AVR_ATtiny85_) if (F_CPU == 16000000) clock_prescale_set(clock_div_1); #berakhir jika
//PINMODE pinMode(LMOTOR, OUTPUT); pinMode(RMOTOR, OUTPUT); pinMode(LLDR, INPUT); pinMode(LLDR, INPUT); //inisialisasi piksel PIXEL.begin(); PIXEL.tampilkan(); penundaan (500); //urutan awal untuk(int i=0;i
lingkaran kosong()
{ if(lightfollow() == 1) { kiri(); } else if(lightfollow() == 2) { kanan(); } else if(lightfollow() == 0) { forward(); } emosi(); }
int mengikuti cahaya() {
int ambang = 14; int hasil = 0; mengambang ke kiri = 0; mengambang kanan = 0; int sampel = 1; //baca LDR untuk (int j = 0; j<sampel; j++){
kiri = kiri + analogRead(LLDR); kanan = kanan + (analogRead(RLDR)*kalib);
}
//hitung hasilnya (dari arah mana datangnya cahaya?)
if((kiri/sampel) > ((kanan/sampel)+treshold)) {hasil = 2;}
else if((kiri/sampel) < ((kanan/sampel)-treshold)) {hasil = 1;}
lain {hasil = 0;}
kembali hasil; } 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.tampilkan(); }
kosong kiri() {
//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.tampilkan(); }
batal kanan() {
//analog KANANTulis(LMOTOR, 255); analogWrite(RMOTOR, 150); PIXEL.setPixelColor(0, PIXEL. Color(0, 100, 0)); PIXEL.setPixelColor(2, PIXEL. Color(0, 0, 255)); PIXEL.tampilkan(); }
//ini untuk eksperimen lebih lanjut, mencoba memberi yang ini sedikit kepribadian:-) saya sedang menguji apa yang bisa dilakukan, tetapi belum ada ide bagus.
batalkan emosi() { int emotimer = 2500; int durasi = acak(250, 750); if (milis() - oldmillis > emotimer) { oldmillis = milis(); emo = acak(1, 4); } if (milis() - oldmillis > durasi) { emostate = !emostate; } if (emostate == true) { switch (emo) { case 1: PIXEL.setPixelColor(1, PIXEL. Color((255), (255), (255))); PIXEL.tampilkan(); merusak; kasus 2: PIXEL.setPixelColor(1, PIXEL. Color((255), (0), (0))); PIXEL.tampilkan(); merusak; kasus 3: PIXEL.setPixelColor(1, PIXEL. Color((0), (255), (0))); PIXEL.tampilkan(); merusak; default: PIXEL.setPixelColor(1, PIXEL. Color(random(0, 255), random(0, 255), random(0, 255))); PIXEL.tampilkan(); merusak; } } else { PIXEL.setPixelColor(1, PIXEL. Color(25, 0, 0)); PIXEL.tampilkan(); } }
Direkomendasikan:
Senapan Cahaya IR Bertenaga Arduino DIY: 12 Langkah
DIY Arduino Powered IR Light Gun: SAMCO adalah Namco GunCon dengan bagian dalamnya diganti dengan pengontrol mikro Arduino dan kamera pemosisian IR Robot DF dan berfungsi sebagai mouse HID pada TV/monitor LCD (layar datar). Saat ini Gun bekerja dengan Mame di RetroPie (untuk Raspberry Pi), PSX Beetl
Saber Cahaya Cetak 3D Dengan Suara Bertenaga Arduino (Termasuk file): 6 Langkah
3D Printed Light Saber Dengan Arduino Powered Sound (Termasuk file): Saya tidak pernah dapat menemukan tutorial yang bagus ketika saya mengerjakan proyek ini, jadi saya pikir saya akan membuatnya. Tutorial ini akan menggunakan beberapa file dari 3DPRINTINGWORLD dan beberapa bagian kode berasal dari JakeS0ftHal-hal yang Anda perlukan:1. Sebuah printer 3D
Text to Speech Klik pada UChip Bertenaga ARMbasic, dan SBC Bertenaga ARMbasic Lainnya: 3 Langkah
Text to Speech Klik pada UChip Bertenaga ARMbasic, dan SBC Bertenaga ARMbasic Lainnya: Intro: Selamat siang. Nama saya Tod. Saya seorang profesional kedirgantaraan dan pertahanan yang juga sedikit geek di hati.Inspirasi: Berasal dari era BBS dial-up, Mikrokontroler 8-bit, komputer pribadi Kaypro/Commodore/Tandy/TI-994A, ketika R
Kotak Cahaya Misteri (Cahaya Malam): 4 Langkah
Kotak Cahaya Misteri (Cahaya Malam): Dan ini adalah proyek kecil yang menyenangkan yang mudah dibuat, Proyek ini adalah referensi dari https://www.instructables.com/id/Arduino-Traffic-L…,Tapi saya sudah mengubah banyak struktur situs asli,. Saya menambahkan lebih banyak led dan saya menggunakan kotak sepatu untuk mengemasnya, s
Cahaya Video Intim/ Cahaya Fotografi Genggam.: 7 Langkah (dengan Gambar)
Cahaya Video Intim/Lampu Fotografi Genggam.: Saya tahu apa yang Anda pikirkan. Dengan "intim," Maksud saya pencahayaan jarak dekat di bawah situasi cahaya yang sulit--tidak harus untuk "situasi intim." (Namun, itu juga bisa digunakan untuk itu…) Sebagai videografer New York City--atau