Isi kandungan:
- Langkah 1: Langkah 1: Buat penutup cahaya
- Langkah 2: Langkah 2: Menyiapkan Tiang PVC
- Langkah 3: Langkah 3: Memasang Jalur LED RGB dan Melempar Pasir Akrilik dengan Pasir
- Langkah 4: Langkah 4: Sambungkan Jalur LED RGB ke Arduino
- Langkah 5: Langkah 5: Tulis Kod Arduino
Video: Lampu Lalu Lintas Interaktif Pintar: 5 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Bersedia untuk membina lampu isyarat terbaik dan paling interaktif di dunia? Baik! Dalam tutorial ini, kami akan menerangkan bagaimana anda boleh membuatnya sendiri menggunakan Arduino.
Komponen yang diperlukan: - Arduino (..duh) - LM317 Mosfet- 2x 60cm Analog RGB LED Strips (12V) - Tiub PVC (1m x 125mm) - Kabel (merah dan hitam) - Plat logam untuk penutup cahaya- Acryl untuk cahaya -icons (periksa flaticon.com untuk ikon.svg) - Cat hitam dan putih Spraycan.- Pita elektrik- Semua komponen pematerian yang diperlukan- Paparan dengan perisai yang diperlukan (tidak digunakan dalam tutorial)
Langkah 1: Langkah 1: Buat penutup cahaya
Reka bentuknya terpulang kepada anda. Kami telah membuat topi 15x15cm untuk menahan lampu. Kami telah memotong kepingan logam dengan ukuran yang betul dan menggunakan penyekat logam (tidak, bukan dari Avatar) untuk membengkokkan penutup dengan bentuk yang betul. Plat belakang dibuat dari komponen yang berbeza.
Langkah 2: Langkah 2: Menyiapkan Tiang PVC
Potong 2 lubang di tiang PVC agar sesuai dengan penutup cahaya. Kemudian gunakan spraycan cat hitam untuk melukis keseluruhan benda hitam. Sekiranya anda mahu, anda boleh menambah jalur putih di bahagian bawah tiang (biasa di Belanda).
Langkah 3: Langkah 3: Memasang Jalur LED RGB dan Melempar Pasir Akrilik dengan Pasir
Seterusnya anda perlu memasang jalur LED RGB di dalam penutup cahaya. Pasangkan erat pada penutup, dan letakkan sedekat mungkin ke depan.
Seterusnya anda perlu meletakkan simbol yang dipilih pada plat akrilik. Dapatkan pita dan tutup keseluruhan piring akrilik. Kemudian potong bentuk / bentuk yang anda mahukan. Selepas ini, anda boleh mencampurkan pinggan pasir untuk mendapatkan kesan seperti kaca beku.
Langkah 4: Langkah 4: Sambungkan Jalur LED RGB ke Arduino
Sekarang datang bahagian yang sukar: menghubungkan Jalur LED RGB ke Arduino. Semasa menyambung pin pastikan anda meletakkan 12v pada 12v jalur anda. Di antara setiap warna, jadi merah atau hijau, anda perlu meletakkan mosfet. Sambungkan data jalur yang dipimpin ke pin tengah mosfet, dan pin kiri ke Arduino anda. Pin kanan mesti kembali ke tanah Arduino.
Langkah 5: Langkah 5: Tulis Kod Arduino
Kod Arduino ini dikendalikan oleh bluetooth, kerana kami tidak menggunakan paparan dalaman. Jadi kod dikendalikan melalui mesej bluetooth dalam fungsi loop ().
#tentukan r 6 # tentukan g 11 #masuk
SoftwareSerial mySerial (10, 11); // RX, TX
#tentukan marahPanjang 4
#define jatuhLamanya 3 #define happyLength 4 #define onPhoneLength 13 #define talkLength 5 #define walkingLength 4 #define walkingOutLength 4 #define wavingLength 6
butang bool Ditekan;
int semasaMillis; int sebelumnyaMillis;
int animation1Delay;
int animation2Delay; int animation3Delay; int animation4Delay;
bool animation1Done = salah;
bool animation2Done = salah; bool animation3Done = salah; bool animation4Done = salah; bool animation5Done = salah;
bool blockLight = palsu;
bool lightRed = benar;
int currentAnimationDelay;
batal persediaan () {
// letakkan kod persediaan anda di sini, untuk dijalankan sekali: pinMode (r, OUTPUT); pinMode (g, OUTPUT);
Serial.begin (9600);
mySerial.begin (38400); Serial.setTimeout (25); butang Ditekan = salah; currentMillis = 0; sebelumnyaMillis = 0;
animasi1Delay = berjalan Panjang * 1000;
animasi2Delay = melambaikanLamanya * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = benar; }
gelung kosong () {
// kelewatan (20);
// letakkan kod utama anda di sini, untuk dijalankan berulang kali: long currentMillis = millis yang tidak ditandatangani =); if (buttonPressed == true) {if (animation1Done == false) {if (currentMillis - sebelumnyaMillis> animation1Delay) {Serial.println ("0"); sebelumnyaMillis = currentMillis; animation1Done = benar; }} lain jika (animation2Done == false dan animation1Done == true) {if (currentMillis - previousMillis> animation2Delay) {Serial.println ("1"); sebelumnyaMillis = currentMillis; animation2Done = benar; }} lain jika (animation3Done == false dan animation2Done == true) {if (currentMillis - previousMillis> animation3Delay) {Serial.println ("2"); //Serial.println("sound:green "); sebelumnyaMillis = currentMillis; animation3Done = benar; lightRed = palsu; }} lain jika (animation4Done == false dan animation3Done == true) {if (currentMillis - previousMillis> animation4Delay) {sebelumnyaMillis = currentMillis; animation4Done = benar; Serial.println ("FLSH"); }}}
jika (Bersiri. tersedia ()) {
String str = Serial.readString (); jika (str == "CMD: BUTTON_PRESSED") {
animation1Done = salah;
animation2Done = salah; animation3Done = salah; animation4Done = salah; animation5Done = salah;
animasi1Delay = berjalan Panjang * 1000;
animasi2Delay = melambaikanLamanya * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = benar; Serial.println ("3"); butang Ditekan = benar; sebelumnyaMillis = currentMillis; }
jika (str == "MERAH") {
blockLight = palsu; lightRed = benar; }
jika (str == "HIJAU") {
blockLight = palsu; lightRed = palsu; }
jika (str == "CAHAYA: HIJAU: MATI") {
blockLight = benar; analogWrite (g, 255); } if (str == "CAHAYA: HIJAU: HIDUP") {blockLight = true; analogWrite (g, 0); } //Serial.println(str); }
jika (blockLight == false) {
jika (lightRed == benar) {
analogWrite (r, 0); analogWrite (g, 255); } jika (lightRed == false) {analogWrite (r, 255); analogWrite (g, 0); }}}
Disyorkan:
Keselamatan Siber-Fizikal Tempat Letak Kereta Pintar dan Kawalan Lalu Lintas: 6 Langkah
Keselamatan Fizikal Siber Tempat Letak Kereta Pintar dan Kawalan Lalu Lintas: Internet berkembang dengan berbilion peranti termasuk kereta, sensor, komputer, pelayan, peti sejuk, peranti mudah alih dan banyak lagi dengan kadar yang belum pernah terjadi sebelumnya. Ini memperkenalkan pelbagai risiko dan kerentanan dalam infrastruktur, operasi dan
Mesin Negeri di Arduino - Lampu Lalu Lintas Pejalan Kaki: 6 Langkah (dengan Gambar)
State Machine on Arduino - Lampu Lalu Lintas Pejalan Kaki: Hai! Saya akan menunjukkan kepada anda cara memprogram lampu isyarat pejalan kaki untuk Arduino di C ++ dengan mesin keadaan terhingga dengan menggunakan YAKINDU Statechart Tools. Ini akan menunjukkan kehebatan mesin negara dan dapat digunakan sebagai cetak biru untuk
Lampu Lalu Lintas Pekerjaan Jenkins: 8 Langkah (dengan Gambar)
Lampu Lalu Lintas Pekerjaan Jenkins: Dalam kejuruteraan perisian, integrasi berterusan adalah amalan menggabungkan semua salinan kerja pemaju ke saluran utama yang dikongsi beberapa kali sehari. Beberapa amalan terbaik untuk mencapainya ialah: setiap orang berkomitmen setiap hari, mengautomasikan
Lampu Lalu Lintas Arduino: 8 Langkah (dengan Gambar)
Arduino Traffic Light: Projek ini dibuat dengan LED 5mm dan Hard Mounting Hardware T1-3 / 4 Clear Clear untuk visualisasi yang lebih baik, dan dengan itu menggunakan 3 LED untuk menunjukkan secara berasingan warnanya Merah, Kuning & Hijau masing-masing
Sistem Lampu Lalu Lintas 4 Jalan Menggunakan Modul Tanpa Wayar 5 Arduino dan 5 NRF24L01: 7 Langkah (dengan Gambar)
Sistem Lampu Lalu Lintas 4 Jalan Menggunakan Modul Tanpa Wayar 5 Arduino dan 5 NRF24L01: Beberapa ketika yang lalu saya membuat Instruksional yang memperincikan sepasang lampu isyarat di papan roti. Saya juga membuat Instructable lain yang menunjukkan kerangka asas untuk menggunakan modul tanpa wayar NRF24L01. Ini membuat saya berfikir! Terdapat banyak