Isi kandungan:

Tangki Bergurau: 5 Langkah
Tangki Bergurau: 5 Langkah

Video: Tangki Bergurau: 5 Langkah

Video: Tangki Bergurau: 5 Langkah
Video: ARIEL TATUM BIKIN NETIZEN GALFOK #shorts 2024, Julai
Anonim
Tangki Bergurau
Tangki Bergurau

Ini adalah projek yang saya buat di sekolah saya HKU, yang memerlukan kami membuat sesuatu dengan Arduino Uno. Saya ingin membuat sesuatu yang akan membuat perkara kegemaran saya, membuat orang ketawa. Oleh itu, memutuskan untuk membuat kotak jenaka yang akan melontarkan jenaka kepada anda, tetapi jenaka apa yang diberikannya akan bergantung kepada apa yang diukur oleh beberapa modul sensor pada saat-saat tertentu. Untuk menjadikannya lebih peribadi saya memutuskan untuk menjadikannya kereta kebal.

Langkah 1: Mendapatkan Bahagian

Bahagian yang anda perlukan untuk mencipta semula projek ini adalah

  • 1x komputer yang mampu menjalankan Arduino IDE
  • 1x Arduino Uno
  • Kabel penyambung 1x usb untuk Arduino Uno
  • Sensor Sonar 1x
  • Pembesar suara 1x (lebih baik berkualiti berkualiti ((saya menggunakan yang saya keluarkan dari pembesar suara bluetooth)).
  • Modul Amplifier 1x LM386 (mungkin dibuat sendiri tetapi saya menggunakan modul).
  • 1x LM393 Mikrofon
  • 1x LDR
  • 1x LED (warna apa pun akan berlaku tetapi saya menggunakan warna biru).
  • Perintang 4x 1kΩ
  • Perintang 1x 2, 7kΩ
  • Papan Roti 1x
  • Kad SD mikro 1x (lebih baik kecil (1 atau 2 gb)).
  • Gerudi kuasa 1x.
  • Drillhead 1x 16mm (lebih baik dibuat untuk penggerudian logam).
  • Drillhead 1x 9mm (juga lebih baik dibuat untuk penggerudian logam).
  • Drillhead 1x 1mm (sekali lagi sebaiknya dibuat untuk menggerudi logam).
  • Tangki Model 1x (saya menggunakan macan tutul skala 1:35 2 tetapi kes lain juga baik).
  • Superglue / hotglue
  • dan beberapa wayar lebih disukai dalam pelbagai warna.
  • ikatan kabel (pilihan).

Langkah 2: Pendawaian

Pendawaian
Pendawaian

Kita perlu mulakan dengan pendawaian, gambar adalah gambar teknikal bagaimana semuanya harus disambungkan. Ini harus berfungsi sebagai cetak biru anda. Catatan: Semua port Arduino dinamakan AP # untuk setiap port. Oleh itu, port ke-4 di Arduino adalah AP4, port A0 adalah APA0 dan port 6 ~ adalah AP6 ~, dan lain-lain Semua port lain dinamakan seperti yang terdapat pada modul itu sendiri.

Langkah 3: Perkara Pra Kod

Sekarang sebelum kita mula menggunakan kod, kita memerlukan beberapa stuf. Saya cadangkan anda sekarang mengikuti tutorial mans ini dari langkah 2 hingga 4

www.electronoobs.com/eng_arduino_tut8.php

Walau bagaimanapun, kami tidak akan menggunakan kodnya kerana kami akan menggunakan kod kami sendiri. Harap maklum bahawa sebilangan pembesar suara menggunakan frekuensi yang berbeza. Pembesar suara saya menggunakan fail audio 16-bit 32kHz. Oleh itu, jika pertuturan anda membuat bising tetapi tidak memainkan fail anda, cuba bermain dengan kekerapan anda.

Langkah 4: Kod

Sekarang kita akan memuat naik kod ke arduino. Salin semua ini dan masukkan ke Arduino IDE dan muat naik ke Arduino anda.

// termasuk perpustakaan untuk pembaca kad SD. # include "Wtv020sd16p.h" // termasuk perpustakaan yang diperlukan untuk sensor sonar. #include // Tetapkan pin untuk Arduino. int resetPin = 4; int clockPin = 5; int dataPin = 6; int busyPin = 7; int soundDetectedPin = 12; int lightDetectedPin = A0; // Tetapkan pin untuk perpustakaan kad SD. Wtv020sd16p wtv020sd16p (resetPin, clockPin, dataPin, busyPin); // Tetapkan pin untuk perpustakaan sensor Sonar. Sonar NewPing (11, 10); // Tetapkan input lain dan tetapkan kadar bit program. batal persediaan () {wtv020sd16p.reset (); pinMode (lightDetectedPin, INPUT); pinMode (soundDetectedPin, INPUT); Serial.begin (9600); } // Bahagian utama program. gelung void () {// Menetapkan interger int lightDetectedVal = analogRead (lightDetectedPin); int jarakVal = sonar.ping_cm (); int soundDetectedVal = digitalRead (soundDetectedPin); // Kelewatan sehingga projek projek tidak akan terus menggunakan pembesar suara. kelewatan (30000); // Garis cetak dan cetakan bersiri sehingga anda dapat dengan mudah melihat nilai apa yang diambil oleh modul sensor. Serial.print ("Nilai Bunyi:"); // Gandakan pernyataan jika program memainkan fail audio yang berbeza bergantung pada nilainya yang diukur oleh modul sensor. jika (soundDetectedVal == 0) {Serial.println (soundDetectedVal); Serial.print ("Jarak:"); jika (jarakVal == 0) {Serial.println (jarakVal); Serial.print ("Nilai Ringan:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (1); // Cetakan bersiri lain supaya anda dapat melihat fail audio yang tepat dimainkan. Serial.println ("1 --------"); // Kelewatan lain untuk membiarkan fail audio dimainkan dengan panjang penuh. kelewatan (5000); } lain jika (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (2); Serial.println ("2 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (3); Serial.println ("3 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (4); Serial.println ("4 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (5); Serial.println ("5 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 500 || lightDetectedVal 0 || jarakVal == NULL) {Serial.println (jarakVal); Serial.print ("Nilai Ringan:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (7); Serial.println ("7 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (8); Serial.println ("8 --------"); kelewatan (8000); } lain jika (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (9); Serial.println ("9 --------"); kelewatan (5000); } lain jika (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (10); Serial.println ("10 -------"); kelewatan (8000); } lain jika (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (11); Serial.println ("11 -------"); kelewatan (6000); } lain jika (lightDetectedVal> = 500 || lightDetectedVal <= 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (13); Serial.println ("13 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (14); Serial.println ("14 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (15); Serial.println ("15 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (16); Serial.println ("16 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (17); Serial.println ("17 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 500 || lightDetectedVal 0 || jarakVal == NULL || jarakVal> = 150) {Serial.println (jarakVal); Serial.print ("Nilai Ringan:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (19); Serial.println ("19 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (20); Serial.println ("20 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (21); Serial.println ("21 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (22); Serial.println ("22 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (23); Serial.println ("23 -------"); kelewatan (5000); } lain jika (lightDetectedVal> = 500 || lightDetectedVal << 500) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (24); Serial.println ("24 -------"); kelewatan (5000); }}}}

Langkah 5: Kesnya

Kes itu
Kes itu
Kes itu
Kes itu

Sekarang datang bahagian yang rumit sebenarnya.

Memadankan semuanya dalam kes ini mungkin agak rumit, ini bergantung pada bagaimana anda memasangkan semuanya ke papan roti atau bagaimana anda menyatukan semuanya. Tetapi anda perlu membuat beberapa lubang agar sensor dapat bertahan. Saya meletakkan mikrofon (gerudi 9mm diperlukan) dan modul sonar (gerudi 6mm diperlukan) di bahagian belakang dan LDR di bahagian depan tangki tetapi anda boleh meletakkannya dengan berkesan sekiranya ada ruang.

Pastikan untuk memotong lubang di badan model agar dapat menghubungkan arduino anda dengan kabel penyambung.

Saya akan mengesyorkan meletakkan pembesar suara di menara. kerana mesti ada banyak ruang yang tersisa di sana.

Gambar kiri di atas adalah bagaimana saya memasang arduino dan cetakan yang saya tempelkan di dalam model Leopard 2. Gambar kanan adalah salah satu dengan kebanyakan pendawaian dipasang.

Apa yang boleh anda lakukan ialah menggerudi lubang kecil di bahagian bawah model untuk mengikat Arduino dengan ikatan kabel.

Tetapi jika saya tidak tersilap, sekarang anda harus selesai.

Disyorkan: