Saya ingin memulai pengembangan beberapa proyek Arduino dasar tetapi saya belum memiliki papan Arduino. Apakah ada cara saya dapat menulis kode saya dan meniru / mengujinya menggunakan komputer desktop sehingga setelah papan saya tiba saya hanya perlu mengunggah dan menjalankan proyek saya di atasnya?
204
Jawaban:
Ada banyak simulator Arduino di luar sana, banyak yang gratis, dan beberapa produk berbayar juga.
Banyak simulator Arduino lain ada di luar sana jika Anda mencari, dan yang baru diumumkan, bahkan crowdfunded, sepanjang waktu.
sumber
Saya suka menggunakan circuits.io alias TinkerCAD untuk ini.
Ini berbasis cloud dan memiliki beberapa fitur bagus termasuk desain dan kolaborasi PCB.
IMO simulasi dan kemampuan Arduino sangat mengesankan dan intuitif.
sumber
Banyak pilihan ada di dunia simulator elektronik, tetapi circuits.io alias TinkerCAD mungkin adalah yang paling serbaguna di luar sana.
Ini adalah contoh sirkuit yang memiliki dengan Remote IR dan Layar LCD.
Penafian: Kami adalah pembuat Sirkuit 123D
sumber
Sadarilah bahwa tidak ada simulator yang akan mereproduksi situasi kehidupan nyata. Ada banyak posting di forum Arduino tentang masalah dengan kode atau elektronik, yang ternyata menjadi sesuatu yang halus, seperti:
Secara alami, simulator tidak dapat mereproduksi semua ini. Bahkan jika mereka bisa, apakah Anda berpikir untuk beralih opsi "masukkan suara acak dari motor"?
Untuk bersiap-siap ketika board tiba, unduh IDE dan mulailah pemrograman. Anda dapat menginstal pustaka, kode tertulis dan bebas dari kesalahan sintaksis, mengaturnya dengan rapi, dan umumnya siap untuk hari besar ketika perangkat keras ada di tangan Anda.
Bersenang-senang dan nikmati bereksperimen dengan Arduino Anda!
sumber
Anda dapat menggunakan Yenka (gratis untuk digunakan di rumah) untuk mensimulasikan Arduino, PIX, PIXACE dan papan lainnya dengan I / O digital, analog dan serial. Ini menyediakan banyak komponen dan proyek sampel.
Tangkapan layar:
sumber
Ya, Anda bisa, coba gunakan Proteus ISIS untuk mensimulasikan kode Anda ...
Untuk emulasi penuh Arduino, ada program shareware yang disebut VBB (Virtual BreadBoard) , saya juga mencobanya dan itu bagus.
Sunting: Anda dapat memeriksa tutorial terperinci saya di sini tentang cara mensimulasikan di Proteus ISIS
sumber
Saya percaya situs web ini memiliki daftar baik emulator maupun simulator beserta harganya dan ketersediaannya.
Memperbarui:
Karena beberapa pengguna menyebutkan ada tautan rusak di situs web itu, berikut ini adalah beberapa pilihan emulator yang saya temukan. Perhatikan bahwa beberapa deskripsi mungkin diambil dari tautan yang disebutkan:
Emulino : Adalah perangkat lunak berbasis linux open source dalam pengembangan awal yang mengemulasi MCU khusus Arduino.
Emulare : adalah emulator perangkat keras tujuan umum. Ini bertujuan untuk menyediakan antarmuka pusat untuk membangun simulasi elektronik untuk pengembangan perangkat lunak tertanam. Saat ini emulare berfokus pada jalur mikrokontroler ATMega (Arduino UNO memiliki prosesor ATMega).
SimAVR : adalah simulator AVR baru untuk linux, atau platform apa pun yang menggunakan avr-gcc. Simulator memuat file ELF secara langsung, dan bahkan ada cara untuk menentukan parameter simulasi secara langsung dalam kode yang ditiru menggunakan bagian .elf. Ini mendukung emulasi banyak prosesor ATMega dan disebutkan bahwa bahkan lebih mudah menambahkan yang baru.
Amtel Studio : Ini sepertinya tidak menyebutkan istilah emulasi, tetapi ini adalah IDE canggih untuk men-debug kode Anda untuk banyak platform khususnya Arduino. Atmel Studio 7 memiliki fitur impor satu klik mulus proyek yang dibuat di lingkungan pengembangan Arduino. Sketsa Anda, termasuk pustaka yang dirujuknya, akan diimpor ke Studio 7 sebagai proyek C ++. Setelah diimpor, Anda dapat memanfaatkan kemampuan penuh Studio 7 untuk menyempurnakan dan men-debug desain Anda. Atmel Studio 7 sepenuhnya mendukung debugger tertanam yang kuat di papan Arduino Zero. Untuk papan Arduino lainnya, adaptor-perisai yang mengekspos konektor debug tersedia, atau beralih ke salah satu dari banyak papan Xplained-Mini / PRO yang tersedia untuk sepenuhnya memanfaatkan ekosistem-sistem Atmel HW.
Anda masih dapat menggunakan simulator seperti EasyEDA untuk menguji kode Anda dan dalam kebanyakan kasus dapat menjalankannya di perangkat. Tetapi perhatikan bahwa mengingat sifat komponen elektronik, Anda mungkin harus menyediakan resistor eksternal, kapasitor dll untuk mendapatkan hasil yang diharapkan.
sumber
Virtualbreadboard memiliki edisi VBB4Arduino 'Dua Arduino' baru yang mencakup KEDUA emulator Arduino JVM DAN AVR Instruksi mengatur simulator dengan contoh-contoh yang mencakup hampir semua contoh distribusi Arduino dan banyak perangkat periferal - LCD, WS2812 Neo LEDS, Motors, Servo's , Logic Analyzer dan banyak lagi.
http://www.virtualbreadboard.com
Penafian: Saya adalah penulis Virtual Breadboard
sumber
Coba Simulator untuk Arduino - ini adalah yang terbaik tetapi kemudian kami bias karena kami adalah bagian dari tim pengembangan. Tidak semua orang ingin membayar $ 19,99 meskipun hampir 5k pengguna Arduino memiliki dalam beberapa tahun terakhir. Ada versi gratis Simulator untuk Arduino yang beroperasi selama 45 hari atau 100 beban sketsa dan maks 200 baris. Coba ini dan kemudian beli jika Anda mampu membelinya dan / atau jika tampaknya bermanfaat.
Jika ada sesuatu yang tidak benar atau yang dapat diperbaiki, beri tahu kami - semua orang melakukannya dan memilikinya, itulah sebabnya Simulator untuk Arduino 99% dibangun oleh gagasan pengguna dan laporan bug.
Juga, satu-satunya program lain yang kami coba yang mendekati kualitas adalah Proteus tetapi ini adalah studio desain PCB penuh dan terlihat sangat mahal - yaitu lebih dari $ 20. Dan kami berencana untuk mengabaikan permintaan pengguna baru-baru ini untuk menaikkan harga menjadi $ 200.
sumber
Anda bisa misalnya menggunakan simulator saya. Ini sangat cocok untuk aplikasi seperti PLC, di mana multitasking dicapai dengan evaluasi siklik dari objek seperti sirkuit yang saling berhubungan: Pengatur Waktu, Penanda, Kait, Oneshots dan Register. Anda dapat menggunakannya untuk mensimulasikan sistem terkontrol Anda juga, seperti menjadi jelas dari contoh-contoh dalam unduhan. Ini memiliki kapasitas visualisasi sederhana, dapat menggambar grafik waktu, dan memungkinkan Anda untuk mengakses dan mengubah cq memaksa semua variabel secara real time selama simulasi berjalan. Anda juga dapat membekukan waktu. Ketika Anda puas dengan perilaku kontrol Anda, kode C akan diunggah ke Arduino yang sebenarnya.
https://pypi.python.org/pypi/SimPyLC
sumber
Jika Anda bermaksud dapat "menguji unit" menggunakan komputer desktop, saya dapat menawarkan perpustakaan yang saya tulis bernama arduino_ci .
Itu tidak menawarkan persaingan. Anda akan mengekspresikan tes Anda dalam kode. Misalnya, ini adalah tes yang diambil dari dokumentasi referensi yang memvalidasi data yang ditulis ke port:
Dalam praktiknya, Anda mungkin tidak akan memanggil
digitalWrite
fungsi secara langsung - Anda akan memanggil fungsi di perpustakaan Anda, lalu verifikasi bahwa "negara dunia" (diwakili di sini olehGODMODE
konstruk) cocok dengan apa yang Anda harapkan perpustakaan Anda lakukan.sumber
Ya, Anda bisa, dan cukup mudah. Ada simulasi online yang luar biasa (sepenuhnya gratis) yang disebut TinkerCAD . Ini memiliki simulasi papan tempat memotong roti yang sangat baik, dengan bagian-bagian seperti transistor, LED, IC, dan Arduino. Anda dapat memprogram Arduino dan menjalankan semuanya dalam simulasi langsung yang mencakup input interaktif (tombol, switch DIP, dll.).
[Sunting: Teks berikut ini merujuk pada fungsionalitas yang telah dipindahkan ke Circuits.io , yaitu Eagle PCB ]
Bukan itu saja. Ini juga termasuk dalam skema tab terpisah untuk sirkuit Anda, dan tab lain untuk desain PCB sirkuit papan tempat memotong roti Anda! Atau, Anda bisa membuat skema dari awal dan membuat PCB dari sana.
Anda dapat memiliki desain sirkuit Anda dan Anda dapat membelinya. Anda dapat melakukan semua ini di circuits.io, dan Anda tidak mengambil risiko mengacaukan Arduino Anda yang sebenarnya. Ini juga memiliki indikator peringatan dalam simulasi (misalnya, jika Anda tidak menggunakan cukup perlawanan pada LED, atau IC).
sumber