Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Arduino Due Arbitrary Waveform Generator

Komponen dan persediaan

Arduino Due
× 1

Tentang proyek ini

Deskripsi Umum

Ini sekarang berjalan di Linux serta Windows.

Frekuensi maksimum gelombang analog:100kHz. Frekuensi maksimum gelombang persegi:42MHz.

Siklus tugas dapat disesuaikan dari hampir 0% hingga 100%

Sangat mudah dibuat - lihat Pemasangan di bawah.

Ini adalah proyek dua bagian:Papan Arduino Due itu sendiri, dan GUI pengontrol untuk digunakan di PC Anda, meskipun papan Arduino juga dapat digunakan sendiri menggunakan panci, sakelar, dan LED.

Tidak diperlukan sirkuit, meskipun sirkuit perlindungan output opsional ditawarkan yang seharusnya melindungi papan Arduino agar tidak secara tidak sengaja menghubungkan output ke tegangan hingga plus dan minus 30V atau lebih. (mungkin lebih)

Dengan menggunakan GUI pengontrol di PC Anda, gelombang arbitrer dapat digambar, diedit, disimpan, dibuka, dan diunggah ke Arduino Due, secara otomatis terhubung melalui port USB. Sebuah file bantuan yang komprehensif disertakan.

Fitur gelombang "melangkah" memungkinkan sejumlah langkah tajam (satu sampel) dalam gelombang untuk dihasilkan dengan mudah jika diinginkan. Selain itu, output dapat dialihkan ke sinewave atau segitiga / gigi gergaji sebagai gantinya.

Juga, gelombang persegi diproduksi secara bersamaan yang dapat disinkronkan atau sepenuhnya independen. Gelombang dapat dikendalikan oleh frekuensi atau periode. Siklus tugas dapat diatur dari hampir 0% hingga 100%. Atau lebar pulsa dapat diatur konstan. (dalam batas-batas periode, tentu saja)

Pengaturan baru dapat langsung diketik melalui keyboard PC atau keypad program. Atau, menekan "MODE" memungkinkan penyesuaian geser.

Mode Tepat tersedia untuk gelombang analog, yang menghindari "langkah frekuensi" yang biasanya terkait dengan generator bentuk gelombang sintesis digital langsung (DDS). Hal ini memungkinkan frekuensi yang lebih presisi dengan memungkinkan akses ke frekuensi di antara "langkah frekuensi" tersebut karena outputnya bukan merupakan pembagian frekuensi clock Arduino saat Mode Tepat aktif.

Fitur sapuan frekuensi (log) untuk salah satu atau kedua gelombang disertakan, dan ada juga pengatur waktu dengan output Arduino positif atau negatif.

Spesifikasi

Gelombang Analog:

Resolusi adalah 12 bit dengan hingga 4096 titik jalan.

Rentang frekuensi adalah:0,05MHz (20.000 detik) hingga 100kHz.

Kecepatan sampel:(di atas 1kHz menggunakan DMA) Hingga 1,6MHz.

Tingkat sampel:(hingga 1kHz) 400kHz.

Laju sampel dalam Mode Tepat:(frekuensi apa pun) 400kHz.

Lebar pulsa minimum:(siklus setengah gelombang)

Pada siklus kerja 0%:350 nanodetik (perkiraan) pada frekuensi apa pun.

Pada siklus tugas 0,01%:Hingga 2,5 - 25 mikrodetik. (perkiraan)

- jika frekuensi lebih dari 1kHz DAN Mode Tepat atau Sinkronisasi aktif,

- jika tidak 350 nanosecs.

Gelombang Kotak:

Rentang frekuensi adalah:0,05MHz (20.000 detik) hingga 42MHz.

Lebar pulsa minimum:

Disinkronkan:[Frekuensi:0,05mHz (20.000 detik) hingga 100kHz]

Pada siklus kerja 0%:48 nanodetik pada frekuensi apa pun.

Pada siklus tugas 0,01%:2,5 - 25 mikrodetik. (perkiraan)

Tidak sinkron:[0.093mHz (10.737 detik) hingga 42MHz]

12nS dari 1.3kHz ke 42MHz. (Menggunakan PWM)

24nS dari 650Hz ke 1.29999kHz. (Menggunakan PWM)

48nS dari 325Hz hingga 649.99999Hz. (Menggunakan PWM)

96nS dari 163Hz hingga 324.9999Hz. (Menggunakan PWM)

Di bawah 163Hz:(Menggunakan interupsi)

Pada siklus kerja 0%:96 nanodetik.

Pada siklus tugas 0,01%:5 mikrodetik.

Instalasi

Program GUI karena PC anda "portable" jadi tidak perlu install.

Untuk pengguna Windows, cukup ekstrak file .zip ke folder pilihan Anda dan buat pintasan ke file .exe. Catatan:File "DueAWGController-Win64.zip" ditujukan untuk sistem 64 bit, tetapi file 32.zip sering kali berfungsi lebih andal karena memiliki java yang disematkan.

Untuk pengguna Linux, ekstrak file DueAWGController-LinuxXX.zip ke dalam folder, lalu klik dua kali file DueAWGControllerLinux atau tambahkan ke menu sistem.

Anda mungkin perlu menginstal OpenJDK 8 (java 8) untuk Debian, Ubuntu, dll:Pada baris perintah (di Terminal), ketik:Sudo apt-get install openjdk-8-jre (Versi yang lebih baru mungkin tidak berfungsi.)

Anda mungkin juga perlu mendapatkan izin untuk mengakses USB sebelum Anda dapat terhubung ke Arduino. Ketik:sudo usermod -a -G dialout $USER

Juga termasuk dua file "lengan" untuk Raspberry Pi dll, tetapi belum diuji. Beri tahu saya jika berhasil.

Sketsa Arduino tidak memerlukan pustaka khusus, jadi Anda hanya perlu menginstal Arduino IDE biasa di PC Anda untuk tujuan mengunggah sketsa ke Due. Asalkan PC Anda telah mengenali Arduino Due, (yang harus dilakukan jika sketsa diunggah) program GUI akan secara otomatis menemukan dan terhubung ke Arduino saat memulai, jadi tidak perlu mengatur port COM. Namun, pemilihan port COM manual diaktifkan jika pemilihan otomatis gagal.

Ada beberapa contoh file wave di folder Arbitrary Waves (hanya untuk bersenang-senang) untuk membantu Anda memulai. Selain program GUI, generator bentuk gelombang Arduino juga dapat dikontrol oleh monitor serial Arduino yang disetel ke 115200 baud. Jenis ? untuk bantuan.

Atau jika Anda lebih suka menggunakan panci, sakelar &LED untuk kontrol, awal sketsa Arduino mencantumkan koneksi pin.

Koneksi pin keluaran gelombang juga tercantum di sana, atau cukup sambungkan pin Arduino 3 dan 7 bersama-sama dengan tautan, atau jika Anda sangat berhati-hati gunakan resistor bernilai rendah (47 - 100 ohm). Ambil keluaran gelombang persegi dari pin 7 dan keluaran analog dari DAC0.

Kode

PENTING:Jangan klik tombol "Unduh sebagai zip".
Untuk mengunduh file, klik "Baca Selengkapnya" di bawah.CATATAN:Mengklik "Unduh sebagai zip" hanya akan mengunduh file readme.https://github.com/Bruce-Evans/ArduinoDueArbitraryWaveformGeneratorAndController

Skema

Sirkuit ini dapat dihilangkan sama sekali, tetapi jika digunakan, sirkuit ini akan melindungi Arduino agar tidak secara tidak sengaja menghubungkan output ke tegangan hingga setidaknya plus dan minus 25V tanpa meningkatkan waktu naik dan turun secara signifikan. D2 dan D3 harus arus tinggi, dioda pemulihan cepat - Saya menemukan bahwa dioda schottky terlalu lambat. Sekering (F1 dan F2) dapat berupa polifuse.

Proses manufaktur

  1. Arduino Spybot
  2. FlickMote
  3. TV Buatan Sendiri B-Gone
  4. Jam Master
  5. Arduino Due TIC TAC TOE dengan Layar Sentuh
  6. JX Wave Generator
  7. Temukan Saya
  8. Arduino Power
  9. Tech-TicTacToe
  10. Arduino Quadruped