Isi kandungan:

Makmal Servo Mikro: 9 Langkah
Makmal Servo Mikro: 9 Langkah

Video: Makmal Servo Mikro: 9 Langkah

Video: Makmal Servo Mikro: 9 Langkah
Video: How to dismantle Servo motor SG90. How it looks from inside #sg90 #servomotors #insideviews 2024, November
Anonim
Makmal Servo Mikro
Makmal Servo Mikro

Di makmal ini kita akan berusaha mengawal kedudukan servo mikro dengan potensiometer. Berdasarkan kedudukan "lengan" servo mikro kita akan menyalakan barisan LED yang sesuai. Untuk makmal ini, anda memerlukan:

  • 1 servo mikro (yang disediakan adalah servo mikro 9 gram)
  • 1 potensiometer
  • 10 LEDS (menggunakan dua warna yang berbeza)
  • 10 220 perintang Ohm

Langkah 1: Sambungkan Servo Mikro

Sambungkan Servo Mikro
Sambungkan Servo Mikro

Servo mikro mempunyai tiga wayar untuk kuasa, arde, dan denyut isyarat. Servo mikro akan menerima denyutan PWM untuk menentukan kedudukannya (0 - 180 darjah). Secara teknikal anda boleh menggunakan salah satu pin PWM di Arduino Uno, tetapi kami biasanya bermula dengan Pin 9 atau 10 *.

Persediaan:

  1. Sambungkan papan roti ke rel kuasa (+ 5V) dan landasan (GND)
  2. Sambungkan servo ke rel elektrik, landasan tanah, dan Pin 9.

** Ini kerana pustaka Servo menggunakan Timer2 di Arduino yang akan menyekat kami daripada menggunakan isyarat PWM, analogWrite (), pada kedua pin ini untuk tujuan lain selain mengendalikan servo. Walaupun kita masih boleh menggunakan pin ini untuk i / o digital, kita biasanya akan menggunakannya secara eksklusif untuk kawalan servo **

Langkah 2: Uji Servo Mikro

Kod di sini adalah contoh kod yang disediakan oleh Servo Library. Ia hanya akan menyapu servo berulang-alik dari 0 hingga 180 darjah

/ * Sapu

oleh BARRAGAN Contoh kod ini berada di domain awam. diubah suai 8 Nov 2013 oleh Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep * / #include "Servo.h" Servo myservo; // buat objek servo untuk mengawal servo // dua belas objek servo dapat dibuat di kebanyakan papan int pos = 0; // pemboleh ubah untuk menyimpan kedudukan servo, kekosongan persediaan () {myservo.attach (9); // melampirkan servo pada pin 9 ke objek servo} gelung kosong () {untuk (pos = 0; pos = 0; pos - = 1) {// naik dari 180 darjah hingga 0 darjah myservo.write (pos); // suruh servo pergi ke kedudukan dalam kelewatan 'pos' pemboleh ubah (15); // menunggu 15ms untuk servo mencapai kedudukan}}

Langkah 3: Sambungkan Potensiometer

Sambungkan Potensiometer
Sambungkan Potensiometer

Kami sekarang akan berusaha mengawal kedudukan servo secara manual dengan potensiometer. Sambungkan potensiometer seperti berikut:

  • Bahagian Kiri - Rel bawah tanah
  • Bahagian Kanan - Rel kuasa
  • Sambungan atas / tengah - Pin A0 (analog 0 pin)

Langkah 4: Kod Permulaan Potensiometer

Berikut adalah beberapa kod permulaan untuk mengawal servo dengan potensiometer. Selesaikan kodnya sehingga apabila anda menggerakkan potensiometer, servo akan bergerak serentak.

/ * Sapu oleh BARRAGAN Contoh kod ini berada di domain awam. diubah suai 8 Nov 2013 oleh Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep * / #include "Servo.h" Servo myservo; // buat objek servo untuk mengawal servo // dua belas objek servo dapat dibuat di kebanyakan papan int pos = 0; // pemboleh ubah untuk menyimpan kedudukan servo int potPin = 0; // Pilih pin untuk menyambungkan potensiometer int potVal = 0; // Penyediaan kekosongan nilai potensiometer semasa () {myservo.attach (9); // melekatkan servo pada pin 9 ke pinMode objek servo (potPin, INPUT); } gelung void () {potVal = analogRead (potPin); myservo.write (pos); // suruh servo pergi ke kedudukan dalam kelewatan 'pos' pemboleh ubah (15); // menunggu 15ms untuk servo mencapai kedudukan}

Langkah 5: Sambungkan LED Pertama

Sambungkan LED Pertama
Sambungkan LED Pertama

Setelah servo dikendalikan melalui potensiometer, kita akan menambahkan maklum balas melalui beberapa LED. Kami akan membuat dua baris LED. Seseorang akan mewakili lengan servo "kiri" dan yang lain mewakili lengan servo "kanan". Semasa servo berubah posisi, satu lengan akan naik dan yang lain akan jatuh. LED akan menyala untuk dipaparkan:

  • lengan penuh dinaikkan
  • separuh tangan adalah sama.
  • off - lengan diturunkan

Gambar rajah akan memaparkan barisan LED di hujung papan roti yang bertentangan. Ini dilakukan untuk kemudahan penglihatan, LED anda harus berbaris / sama antara satu sama lain.

Sambungkan LED pertama:

  • Sambungkan plumbum pendek LED ke landasan
  • Sambungkan plumbum LED yang lebih panjang ke perintang 220 Ohm. Sambungkan perintang ke pin 13 pada Arduino.

Langkah 6: Sambungkan Sisa LED yang tersisa

Sambungkan Sisa LED
Sambungkan Sisa LED

Setelah LED pertama ditambahkan, sambungkan LED yang tersisa:

  • Plumbum yang lebih pendek - sambungkan ke landasan kereta api
  • Pimpin yang lebih panjang - sambungkan perintang 220 Ohm ke LED dan Pin Arduino berikut: 12, 11, 10, 9, 8

Langkah 7: Tambah LED Pertama, Baris Kedua

Tambah LED Pertama, Baris Kedua
Tambah LED Pertama, Baris Kedua

Baris kedua LED akan ditambah dengan cara yang sama seperti yang pertama:

  • Sambungkan plumbum pendek LED ke landasan
  • Sambungkan plumbum LED yang lebih panjang ke perintang 220 Ohm. Sambungkan perintang ke pin 7 di Arduino.

Langkah 8: Sambungkan LED Akhir

Sambungkan LED Akhir
Sambungkan LED Akhir

Sambungkan LED yang tinggal:

Plumbum yang lebih pendek - sambungkan ke landasan Landasan lebih lama - sambungkan perintang 220 Ohm ke LED dan Pin Arduino berikut: 6, 5, 4, 3

Langkah 9: Kawal Paparan LED

Langkah terakhir anda adalah mengemas kini kod anda untuk mengawal LED anda. Ia perlu menangani perkara berikut:

  • Baris atas akan sepadan dengan "lengan kanan" servo. Semasa lengan menyapu ke atas / ke bawah, LED mesti menyala / mati.
  • Baris bawah akan sepadan dengan "lengan kiri" servo. Semasa lengan menyapu ke atas / bawah, LED mesti menyala / mati.

Disyorkan: