4 Okt 2021

Topeduino - Bikin Sendiri Arduino Uno USB-C

Halo agan-agan sekalian, tutorial kali ini bakal ngeliatin cara ngebuat "Topeduino" yaitu sebuah papan Arduino Uno Compatible, mulai dari order PCB stencil, cara nggunain timah cair, pasangin komponen SMD kecil secara manual pake tangan sama manasin pake hot air. Keistimewaan Topeduino dari Arduino uno biasanya adalah karena menggunakan soket USB tipe C jadi terlihat kekinian. Kali aja setelah liat ini agan-agan punya ide untuk bikin Arduino versi sendiri

Jika agan ingin membuat PCB dan sedang mencari jasa cetak PCB, bisa langsung order saja ke PCBWAY.COM, harganya lebih murah $5 bisa mendapatkan papan PCB 10 keping dengan kualitas PCB yang sangat bagus. Khususnya untuk project kali ini karena menggunakan cukup banyak komponen SMD kecil agan-agan bisa sekalian order stencil untuk yang berguna sebagai pola sablon untuk timah pasta.

Gambar Rangkaian

Daftar Komponen:

  • 11 x PCB Topeduino (PCBWAY)
  • 11x IC ATMEGA328P DIP
  • 11x IC CH340
  • 11x AMS1117 5V
  • 11x Diode 1N4001 (M1)
  • 12x Yellow LED 0603
  • 12x Green LED 0603
  • 11x Resetable Fuse 1A
  • 11x XTAL 12MHz
  • 11x XTAL 16MHz
  • 12x R 22 Ohm
  • 12x R 5K1 Ohm
  • 15x R 1K Ohm
  • 13x R 10K Ohm
  • 17x C 0.1 uF
  • 12x C 22 pF
  • 12x ELCO SMD 47uF/25V
  • 11x Tact 6x6
  • 11x USB Type-C Socket 16 pin
  • 12x Female Header 8 pin
  • 11x Female Header 10 pin
  • 11x Male Header 6 pin
  • 11x IC Socket 28 pin
  • 11x Barell Socket DC

  • Order PCB dan Stencil(PCBWAY)

    Untuk membuat proyek ini kamu perlu memesan prototipe PCB dan Stencil di PCBWAY. Cara pemesanannya sangat mudah, kamu akan mendapatkan 10 keping PCB seharga $5 dengan kualitas PCB yang sangat bagus.

    Langkah-langkah order:

    1. SignUp/Log in di pcbway.com

    2. Buka tautan proyek PCB ini.

    3. Centang juga pilihan Stencil untuk termasuk pembuatan stencil.

    4. Klik Tambahkan ke troli.

    5. Tunggu sebentar untuk review PCB, lalu Klik Check Out.

    Setting PCB dengan Stencil

    Proses ini sama seperti mau menyablon gambar pada t-shirt, agan buat pembatas menggunakan PCB bekas atau PCB penggaris yang memiliki ketebalan sama 1.6mm.

    Kemudian agan perlu set supaya lubang-lubang stencil pas dengan foot print komponen SMD pada PCB dan rekatkan tepi atas stencil menggunakan solasi.

    Timah Pasta

    Solder pasta yang digunakan yang berukuran kecil merk "Mechanic", sebelum digunakan aduk terlebih dahulu agar hasilnya menjadi bagus.

    Menempelkan Solder Pasta

    Proses ini sama kaya meyablon, gunakan plastik fleksibel atau kartu kredit bekas untuk mengoleskan solder sehingga merata.

    Berikut gambar hasil solder pasta yang menempel setelah disablon menggunkan stencil

    Pemasangan Komponen SMD

    Setelah semua semua footprint komponen smd tertutup timah pasta, saatnya menempatkan komponen SMD, cara yang dilakukan secara manual yaitu menggunakan pinset.

    Perhatikan saat menempatkannya jangan sampe terbalik atau tertukar dengan yang lain, untuk lebih jelasnya bisa mengacu pada gambar layout dibawah ini.

    Memanaskan Timah Pasta

    Sebelum memanaskan, pastikan semua komponen sudah sesuai dan tidak melenceng pada tempatnya.

    Panaskan menggunakan hot air atur kekuatan tiupan serendah mungkin untuk menghindari bergesernya komponen SMD, atur suhu sekitar 300 derajat Celcius.

    Ketika dipanaskan timah pasta akan berubah wujud menjadi padat seperti hasil dari solderan pada umunya.

    Memasang Komponen Throughole

    Selanjutnya pasang komponen jenis throughole yang mempunyai kaki pada PCB mengikuti gambar/simbol komponen yang ada pada bagian atas PCB.

    Menyolder Komponen

    Solder semua kaki komponen pada bagian bawah PCB, untuk lebih jelasnya dapat mengikuti step by step pada video youtube.

    Kemudian potong kaki komponen yang panjang menggunakan tang pemotong, hati-hati ketika memotong pastikan memakai kacamata safety.

    Memasang IC

    Otak dari sebuah papan Arduino adalah IC Atmega328, yang membuat IC Atmega328 ini dekanali sebagai Arduino maka harus memiliki boot loader Arduino yang caranya bisa kamu isi/flash menggunakan Arduino IDE.

    Blok diagram Arduino uno terdiri dari tiga bagian:

  • IC Atmega328
  • Regulator Tegangan
  • USB to TTL
  • Agan bisa juga membeli IC Atmega328 yang sudah terisi dengan boot-loader Arduino Uno sebelumnya. Banyak yang menjual di marketplace.

    Mengisi Program

    Sudah pada tahap ini berarti agan selesai bikin board Topeduino (Arduino Uno USB-C).
    Sekarang saatnya coba mengupload sketch pertama (Blink.ino) ke board Topeduino, untuk mengupload sketch agan dapat menggunakan software Arduino IDE pada komputer. Berikut langkah cara mengupload sketch ke board Arduino:

  • Sambungkan board Topeduino dengan komputer/laptop menggunakan kabel USB type-C
  • Buka example sketch Blink dengan pilih: File > Contoh > 01.Basics > Blink.
  • Pilih jenis papan Arduino yang agan gunakan: Alat > Papan > Arduino Uno.
  • Pilih port serial/COM sesuai dengan Arduino yang terpasang: Tools > Port > COMxx. Dalam hal ini adalah COM11.
  • Kemudian tekan icon upload.
  • Setelah beberapa saat, Agan akan melihat beberapa LED berkedip di Arduino Anda, diikuti dengan pesan "Don Uploading" distatus bar bawah.
  • 29 Jun 2021

    Membuat Self Balancing Robot Dikontrol via Wifi Berbasis ESP32



    Halo agan-agan sekalian, apa tahu yang namanya Self balancing Robot, itu tuh robot mainan yang ada rodanya dua kiri kanan tapi anehnya robot ini bisa berdiri seimbang tanpa harus jatuh. Kenapa bisa seimbahnya dikarenakan pada rangkaian robot tersebut terdapat sensor accelerometer dan gyro yang bisa bikin motor bergerak maju mundur seimbang tanpa terjatuh.

    Ikutin tutorial ini nanti agan bakal ditunjukin alat-alat dan komponen apa saja yang diperlukan serta bagaimana cara membuatnya.

    Jika agan ingin membuat PCB dan sedang mencari jasa cetak PCB, bisa langsung order saja ke PCBWAY.COM, harganya lebih murah $5 bisa mendapatkan papan PCB 10 keping dengan kualitas PCB yang sangat bagus.

    Gambar Rangkaian

    Daftar Komponen:

  • 1 x PCB ESP32 Balancing Robot Shield
  • 1 x ESP32 DEVKIT V1 board
  • 2 x Stepper Motor Driver A4988
  • 1 x 3 axis Acc. and Gyro sensor MPU6050
  • 2 x Stepper Motor Nema17
  • 1 x Servo Motor MG90S
  • 1 x LED 3mm
  • 2 x LED 3mm White Super Bright
  • 1 x Active BUzzer
  • 2 x V-Regulator 5V AMS1117 (SMD)
  • 1 x Resistor 1K Ohm
  • 1 x Capacitor 0.1uF
  • 1 x Capacitor 100uF/16V
  • 2 x Capacitor 220uF/16V
  • 1 x Rocker Switch Dia. 20mm
  • 2 x Rechargeable Battery Li-ion 18650 3,7V
  • 1 x Battery Holder 2x 18650
  • 1 x Micro USB Cable
  • 1 x OTG Adapter
  • 1 x Terminal Screw 2 pin 5mm
  • 2 x Female Header 15 pin
  • 5 x Female Header 8 pin
  • 2 x Female Header 4 pin
  • 1 x Male Header 2 pin
  • 1 x Male Header 3 pin
  • 1 x Jumper cap
  • 1 x Set screw 5mm
  • 1 x Set M3 set screw 10mm
  • 2 x O-ring 3mm ID 82mm
  • 1 x Set 3D Printed Parts

  • Order PCB (PCBWAY)

    Untuk membuat proyek ini kamu perlu memesan prototipe PCB di PCBWAY. Cara pemesanannya sangat mudah, kamu akan mendapatkan 10 keping PCB seharga $5 dengan kualitas PCB yang sangat bagus.

    Langkah-langkah order:

    1. SignUp/Log in di pcbway.com

    2. Buka tautan proyek PCB ini.

    3. Klik Tambahkan ke troli.

    4. Tunggu sebentar untuk review PCB, lalu Klik Check Out.

    Menyolder Komponen SMD

    Proyek kali ini memiliki dua komponen SMD, jangan khawatir komponen ini tidak terlalu sulit untuk disolder karena ukurannya cukup besar, agan hanya membutuhkan pinset sebagai alat bantu untuk menahan komponen saat disolder. Langkah pertama beri lapisan timah pada tembaga PCB untuk tempat kaki komponen SMD.
    Kemudian ditahan menggunakan pinset lalu di panaskan kembali timah hingga menempel dengan kaki komponen SMD.

    Memasang Komponen

    Pasang semua komponen pada PCB mengikuti gambar/simbol komponen yang ada pada bagian atas PCB, untuk lebih jelasnya dapat mengikuti step by step pada video youtube.

    Menyolder Komponen

    Solder semua kaki komponen pada bagian bawah PCB, untuk lebih jelasnya dapat mengikuti step by step pada video youtube.

    Kemudian potong kaki komponen yang panjang menggunakan tang pemotong, hati-hati ketika memotong pastikan memakai kacamata safety.

    Memasang Modul

    Pasang board ESP32, modul sensor MPU6050 dan modul Driver Stepper Motor A4988 ke soket female header yang tersedia seperti terlihat pada gambar, ketika memasang perhatikan arah dan nama pin jangan sampai terbalik.

    Part 3D Printer

    Cetak semua part 3D robot Balancing, file 3D nya bisa agan download dari sini thingiverse.com/thing:2306541

    Daftar nama part 3D yang harus dicetak:

  • 2 x Wheels
  • 2 x Hub Arm
  • 2 x Side Panel
  • 1 x Top Shelf
  • 1 x Motor Shelf
  • 1 x Electronics Shelf
  • 2x Bumpers
  • Memasang Part 3D

    Masukkan ke empat mur M3 di setiap lubang ditepi part 3D Electronic Shelf.

    Pasangkan part 3D Side panel di kedua sisinya lalu dikencangkan dengan baud M3.

    Memasang Stepper Motor

    Pasang kedua stepper motor Nema17 ke part 3D Motor Shelf seperti terlihan pada gambar kemudian kencangkan dengan baud M3.

    Menggabungkan Part 3D

    Pasang bagian Motor Shelf dengan Electronic Shelf seperti terlihat pada gambar kemudian kencangkan dengan baud M3.

    Memasang ESP32 Balancing Robot Shield Ke Body

    Sebelum memasangkan ESP32 Balancing Robot Shield letakkan pengikat baterai dibawahnya seperti yang ditunjukkan pada gambar.

    Pasang ESP32 Balancing Robot Shield lalu dikencangkan menggunakan skrup.

    Memasang ESP32 Balancing Robot Shield Ke Body

    Solder kabel jumper dupont ke kaki sakelar rocker.

    Masukkan sakelar rocker ke lubang dari part 3D Side Panel sebelah.

    Hubungkan konektor dupont jumper ke pin pada ESP32 Balancing Robot Shield.

    Memasang Motor Servo

    Pasangkan motor servo MG90 ke dudukan lubang part 3D Side Panel sebelah kiri seperti yang ditunjukkan gambar, kemudian kencangkan dengan mur+baud M2.

    Hubungkan konektor dari motor servo ke pin soket pada ESP32 Balancing Robot Shield, perhatikan pemasangannya jangan sampai terbalik.

    Hubungkan juga kedua konektor dari motor stepper ke soket yang sudah terseida seperti ditunjukkan pada gambar.

    Memasang Baterai

    Hubungkan dan kabel dari dudukan baterai ke terminal sekrup pada pada ESP32 Balancing Robot Shield, kabel merah ke terminal VM dan kabel hitam ke terminal GND.

    Pasang kedua baterai 18650 ke dudukan baterai.

    Masukkan tempat baterai tadi di sela antara bawah part 3D Electronic Shelf dan atas motor stepper, kemudian ikat dengan pengikat baterai.

    Memasang Part 3D Penutup

    Masukkan ke empat mur M3 di setiap lubang ditepi part 3D Top Shelf. Pasang diatas part 3D Side Panel kemudian kencangkan dengan baud M3.

    Memasang Part 3D Bumper

    Terdapat dua part 3D bumper untuk dipasang pada bagian depan dan belakang part 3D Side Panel dan dikencangkan menggunakan sekrup.

    Memasang Part 3D Arm

    Sebelum memasang part 3D Arm, terlebih dahulu putar poros motor servo ke posisi tengah atau setengah putaran (90 derajat), lalu pasangkan part 3D Arm tegak lurus ke atas kemudian kencangkan dengan sekrup bawaan dari servo motor.

    Memasang Part 3D Wheel

    Gabungkan part 3D Wheel dengan part 3D HUB, kemudian pasangkan O-ring pada roda. Setelah itu pasangkan roda tadi keporos masing-masing motor stepper.

    Mengisi Program ke ESP32 Board

    Untuk membuat WiFi Self balancing Robot berfungsi dan dapat dikendalikan oleh smartphone Android, agan harus memprogram ESP32 terlebih dahulu. Caranya cukup mudah hanya cukup menggunakan smartphone Android tidak memerlukan lagi Laptop/PC, ikuti langkah berikut:

    - Install aplikasi ESP32 WiFi Balancing Robot dari Google Playstore.

    - Hubungkan antara smartphone Android dengan ESP32 Motor Shield menggunakan kabel USB dan USB OTG adapter. (pastikan HP agan support USB OTG)

    - Buka aplikasi ESP32 Wifi Balancing Robot, pada menu bar atas tekan icon Circuit diagram & Code. Kemudian setelah terbuka tampilan gambar rangkaian dan kode pada menu bar atasnya tekan ikon setting (gear), buka pilihan Upload Firmware Via lalu pilih USB OTG, jika ingin menghubungkan Robot ke sebuah router jaringan rumah agan bisa set SSID name & Password. Setelah selesai konfigurasi langkah selanjutnya tekan ikon UPLOAD, dan tunggu sampai proses uploadnya selesai. Terakhir tekan tombol reset untuk menjalankan program.

    Selain mengisi program melalui smartphone Android, agan dapat juga memprogram ESP32 melalui komputer menggunakan software Arduino IDE, download full source code nya disini:

    Catatan: Software Arduino IDE agan harus sudah disetting untuk dapat digunakan untuk memprogram ESP32 sebelumnya.

    Mainkan Balancing Robot

    Balancing Robot dapat dikontrol melalui smartphone Android dengan dua cara, dikontrol langsung antara smartphone Android ke ESP32 (mode AP), dengan cara hubungkan smartphone Android ke SSID Wifi dari ESP32 kemudian atur alamat IP pada aplikasi menjadi 192.168.4.1.

    Cara kedua adalah ESP32 (mode STA), dimana smartphone Android terhubung ke jaringan Wifi router yang sama kemudian atur alamat IP pada aplikasi sesuai dengan alamat IP yang dimiliki oleh ESP32 (contoh:192.168.0.2).