Board ARM STM32F103CBT6

Berikut ini beberapa foto terkait STM32F103. Nantinya akan dilengkapi dengan hasil-hasil percobaan dengan STM32F103

STM32F103
Board STM32F103 “Blue Pill”

Layout PCB STM32F103
Layout PCB STM32F103

STM32F103 Pinout Diagram

STM32F103 Pinout Diagram

Pemrograman

Upload program ke STM32F103 dapat dilakukan dengan 3 cara:

  • Menggunakan bootloader internal yang dapat diaktifkan dengan mengubah setting pin BOOT0 menjadi 1. Pada mode ini program dapat dimasukkan menggunakan port serial yang terhubung pada PA9 dan PA10. Port serial pada STM32F103 menggunakan level TTL 3.3 volt, sehingga perlu konverter USB to serial 3V3 supaya dapat dihubungkan ke PC/Laptop.
  • Menggunakan pin SWD (Serial Wire Debugging). Untuk programming cara ini mesti menggunakan modul ST LINK V2
  • Menggunakan bootloader USB. Bootloader dapat menggunakan port USB untuk memasukkan program sehingga lebih praktis dibandingkan bootloader internal. Bootloader USB ini mesti dimasukkan menggunakan bootloader internal ataupun SWD.
Upload program ke STM32F103
Upload program ke STM32F103

Bootloader

  • Serial (TX1/RX1, atau pin PA9 dan PA10) : Built in bootloader yang tersambung ke port serial 1 di STM32F103
  • SWD (DIO/DCLK, atau pin JT): STLink v2
  • USB (D+/D- atau pin PA11 dan PA12)Custom boot loader, yang dapat dihubungkan ke USB

Untuk memasukkan software dari Windows menggunakan bult in bootloader, dapat menggunakan software Flash Demonstrator dari STMicro http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html

Salah satu custom boot loader yang sering dipakai adalah STM32duino bootloader, yang memungkinkan pemrograman STM32F103 dengan menggunakan IDE Arduino. Petunjuk instalasinya ada di https://github.com/rogerclarkmelbourne/STM32duino-bootloader

Pengembangan

Pembuatan software untuk STM32 ini dapat dilakukan dengan berbagai cara:

Links:

Belajar Mikrokontroler ARM

Berikut ini beberapa bahan bacaan untuk belajar menggunakan prosesor ARM

 

 

STM32F103
Board STM32F103

Berikut beberapa buku teks terkait prosesor ARM:

  • Carmine Noviello, Mastering STM32, Leanpub 2016
  • Geoffrey Brown, Discovering the STM32 Microcontroller, Indiana University, 2012 (https://www.cs.indiana.edu/~geobrown/book.pdf) , versi terakhir 5 Juni 2016
  • Jonathan Valvano, Embedded Systems: Introduction to ARM Cortex-M Microcontrollers, vol 1, 2013
  • Jonathan Valvano, Embedded Systems: Introduction to ARM Cortex-M Microcontrollers, vol 1 5th edition, 2014
  • Jonathan Valvano, Embedded Systems: Real-Time Interfacing to ARM Cortex-M Microcontrollers vol 2, 4th Edition,  July 2014
  • Jonathan Valvano, Embedded Systems: Real-Time Operating Systems for ARM Cortex-M Microcontrollers vol 3, 4th Edition,  January 2017
  • Trevor Martin, The Insider’s Guide to The STM32 ARM Based Microcontroller, Hitex (UK) Ltd., 2008
  • Ying Bai, Practical Microcontroller Engineering with ARM Technology, IEEE Press, Wiley 2016

 

 

 

Mengukur Daya Pemanas Air

Berikut ini 2 buah pemanas air tipe celup, yang menggunakan tegangan 220 volt:

Pemanas air celup
Pemanas air celup

Kedua pemanas ini berbeda konstruksi dan ukuran, namun dayanya kurang lebih sama, 300 ~ 400 watt.

Pemanas air ATN
Pemanas air ATN

 

Pemanas Air ATN 350 watt
Pemanas Air ATN 350 watt
Pemanas Air ATN
Pemanas Air ATN

 

 

Pemanas Air Gen Star
Pemanas Air Gen Star

 

Mengukur daya pemanas air ini cukup mudah dengan menggunakan pengukur daya Energy Meter TS-838

Berikut hasil pengujian:

No Merek Model Tegangan terukur Daya tertulis Daya terukur Daya 220 volt (teoritis)
1 GEN STAR tidak ada 207 volt 350 W – 450 W 325 W 367.1 W
2 ATN D-021 207 volt 350 W 310 W 350.16 W

Penjelasan

Daya diukur pada tegangan 207 volt, karena pada saat pengukuran tegangan dari PLN adalah 207 volt. Nampak bahwa daya terukur kurang dari daya yang tertulis pada produk tersebut. Hal ini masuk akal, karena rumus daya (P) adalah P=V*V/R , sehingga kalau tegangan kurang dari 220 volt, maka wajar kalau daya kurang dari yang tertulis.

Setelah diukur, dihitung berapa daya yang akan dipakai kalau tegangannya adalah 220 volt, bukan 207 volt. Caranya dengan menghitung resistansi/tahanan (R) dan dari situ menghitung daya (P) untuk tegangan 220 volt.

Pada kasus 1:

P = V * V / R

makaR = V * V / P = 207*207/325

P pada 220 volt = 220 * 220 / R = 220 * 220  / (207*207/325) = 367.1 watt

Kesimpulan angka ini masih sesuai dengan yang disebutkan pada produk, yaitu antara 350 watt sampai dengan 450 watt.

Pada kasus 2:

R = V * V / P = 207*207/310

P pada 220 volt = 220 * 220 / R = 220 * 220  / (207*207/310) = 350.16 watt

Kesimpulan angka ini masih sesuai dengan yang disebutkan pada produk, yaitu 350 watt.

Kedua pemanas ini hanya on off, jadi tidak dapat dikendalikan dayanya. Jika ingin dikendalikan, dapat menggunakan lamp dimmer atau rangkaian pengendali berbasis Arduino seperti di https://arduinodiy.wordpress.com/2012/10/19/dimmer-arduino/

 

Menyambungkan Dot Matrix Display P10 Dengan Arduino

Menyambungkan Dot Matrix Display P10 Dengan Arduino gampang-gampang susah.

Dari Arduino ke display menggunakan kabel pita/flat (ribbon) yang dapat kena gangguan (noise)

Berikut contoh masalah yang terjadi kalau kabel terlalu panjang:

Dot Matrix Display dengan kabel panjang
Dot Matrix Display dengan kabel panjang

 

Solusi:

menggunakan jalur ground selang-seling di kabel pita

 

Pinout Display P10
Pinout Display P10

 

Referensi:

Mengukur tegangan pin 5V pada Arduino

Pada Arduino Nano dan Arduino UNO terdapat pin dengan nama ‘5V’. Menurut nama pin tersebut, seharusnya pin tersebut bertegangan 5 volt, namun ternyata tidak selalu demikian.

Berikut ini beberapa board Arduino yang akan diukur tegangan pin ‘5V’-nya.

Arduino UNO
Arduino UNO Original
Arduino Nano specimen 2
Arduino Nano Clone (KW) specimen 2
Arduino Nano specimen 1
Arduino Nano Clone (KW) specimen 1

Board Arduino Nano Clone mirip, namun nampak ada perbedaan kecil pada kedua board tersebut.

Berikut ini hasil pengukuran pin ‘5V’ pada 2 buah board Arduino Nano Clone (KW), dan 1 buah board Arduino UNO (ORI). Sumber tegangan menggunakan 2 macam, yaitu pertama melalui kabel USB, dan kedua melalui pin VIN pada board Arduino.

Board Output 5V dengan Power dari USB (Desktop PC) Output 5V dengan Power VIN dari adaptor 7,5 volt
Arduino Nano KW specimen 1 3.37 volt 4.97 volt
Arduino Nano KW specimen 2 4.6 volt 4.92 volt
Arduino UNO ORI 4.89 volt 4.98 volt

Kesimpulan

  • Tegangan supply dari USB menghasilkan tegangan pada pin ‘5V’ yang bervariasi
  • Tegangan supply dari pin VIN menghasilkan tegangan ‘5V’ yang lebih konsisten mendekati 5 volt.
  • Arduino UNO ORI memberikan hasil tegangan ‘5V’ lebih bagus untuk power dengan USB.

Tegangan Referensi Untuk Rangkaian Elektronika

Dalam beberapa rangkaian elektronika diperlukan tegangan referensi yang presisi, misalkan untuk ADC (analog to digital converter) ataupun untuk DAC (digital to analog converter). Untuk itu diperlukan tegangan referensi yang tegangannya tepat sesuai yang diinginkan, dan relatif stabil terhadap perubahan catu daya maupun temperatur.

Regulator seperti LM7805 dan LM78L05 kurang cocok karena regulator ini dirancang untuk memberikan arus besar, bukan untuk memberikan tegangan yang tepat.

Berikut ini komponen tegangan referensi yang tersedia di pasaran Indonesia:

Tegangan dida zener yang umum di pasaran:

  • 3,3 volt
  • 3,6 volt,
  • 5,1 volt
  • 5,6 volt
  • 6,2 volt
  • 9,1 volt
  • 12 volt
  • 15 volt
  • 18 volt

Berikut ini penampakan LM336Z25 dan LM336Z5.

LM336Z5 dan LM225Z25
LM336Z5 dan LM225Z25

Berikut ini AD586

AD586
AD586 Precision 5V Reference

Referensi

Rangkaian Operational Amplifier

Beberapa catatan untuk rangkaian berbasis operational amplifier

Teknik Virtual Ground

Jika menggunakan single supply, tegangan referensi sinyal (ground) dapat dibuat dengan menggunakan op-amp lain.

Virtual Ground
Virtual Ground (http://www.ti.com/lit/an/sboa059/sboa059.pdf)

Low voltage Op-Amp:

  • LM358 http://www.ti.com/lit/ds/symlink/lm158.pdf http://www.ti.com/product/LM358

OP-Amp yang kurang baik pada tegangan rendah:

  • TL082

Penjelasan istilah op-amp:

Referensi:

Kapasitor Dekopling pada Rangkaian Elektronik

Analisis Pengendali Temperatur TEW IL-80EN

Foto menurut http://olx.co.id/iklan/thermo-controller-il-80en-tew-IDkZBJk.html

Kardus TEW IL-80EN
Kardus TEW IL-80EN
Tampak depan TEW IL-80EN dan sensor Thermocouple
Tampak depan TEW IL-80EN dan sensor Thermocouple
Tampak belakang TEW-IL-80EN
Tampak belakang TEW-IL-80EN
Tampak Belakang TEW IL-80EN
Tampak Belakang TEW IL-80EN

Analisis gambar:

  • Terminal 1 & 2 dipakai untuk memasang sensor thermocouple (singkatan TC)
  • Terminal 3 & 5 dipakai untuk dipasang ke jala-jala listrik 220 volt
  • Terminal 7 & 8 dipakai untuk ke beban (pemanas) 220 volt
  • Terminal 6 , 7 & 8 di dalam terhubung ke suatu relay, yang merupakan sakelar listrik. Sakelar ini diatur ON jika temperatur terlalu dingin (supaya pemanas menyala), dan OFF jika temperatur sudah cukup panas. Normalnya pemanas dipasang antara 7 & 8.

Prosedur ujicoba yang disarankan, pertama-tama cek dulu apakah pengendali bekerja normal, dan sensor bekerja normal.

  1. Jangan dipasang ke jala-jala 220 volt dulu
  2. Cek dengan multitester, apakah terminal 6 & 7 terhubung, atau 7 & 8 terhubung. Menurut gambar di atas, pada kondisi normal, terminal 6 & 7 terhubung, sedangkan 7 & 8 tidak terhubung.
  3. 6, 7 & 8 jangan disambung dulu ke jala-jala listrik
  4. pasang sensor thermocouple ke terminal 1 & 2
  5. pasang jala-jala listrik 220 volt ke terminal 3 & 4
  6. Ubah-ubah setelan temperatur di panel depan. Ketika setelan temperatur di bawah temperatur kamar, seharusnya relay terhubung antara 6 & 7, sedangkan kalau setelan temperatur di atas temperatur kamar (misal 50 derajat), maka seharusnya relay ON (7 & 8 tersambung) untuk menyalakan pemanas. Biasanya perubahan ON/OFF ini dapat terdengar suaranya dari relay yang bekerja, atau dapat diukur dengan mengecek sambungan di terminal 6,7 & 8
  7. Jika percobaan point 6 berhasil, dapat disimpulkan pengendali temperatur sudah bekerja dengan baik, sensor sudah terpasang dengan benar

Prosedur instalasin dengan pemanas

  • Sama seperti percobaan sebelumnya, hanya di sini terminal 7 disambung ke salah satu kabel 220 volt, dan terminal 8 disambung ke pemanas. Terminal pemanas yang lainnya disambung ke kabel 220 volt yang satunya (seperti pada skema tersebut).

Save

Save

Antena Coaxial Collinear 1090 MHz Untuk ADS-B

Pada tulisan ini diuraikan pembuatan antena coaxial collinear untuk perangkat penerima sinyal ADS-B (Automatic Dependent Surveillance Broadcast)  dengan frekuensi 1090 MHz.

Desain antena mengacu ke artikel Coaxial Collinear Antenna for ADS-B Receiver (https://www.balarad.net/).

Diagram antena adalah sebagai berikut:

Desain antena collinear
Skema Antena Coaxial Collinear

Perancangan Antena Coaxial Collinear

Setiap elemen adalah kabel coaxial dengan panjang mengikuti panjang gelombang yang diinginkan:

Elemen dasar antena collinear
Elemen dasar antena collinear

Perhitungan panjang elemen:

frekuensi = 1090 MHz

Kecepatan cahaya dalam vakum = 3E8 = 300000000 m/s

Propagation velocity kabel Hansen 50 ohm adalah 84%, artinya kecepatan rambat sinyal dalam kabel tersebut adalah 3E8 m/s x 84%.

lambda = panjang gelombang pada kabel = c/f = 3E8 * 0.84 / 1090 MHz

Panjang elemen = 0.5 x lambda x propagation velocity = 0.5 x 3E8 x 0.84 /1090MHz = 116 mm

Jadi diperlukan elemen dengan panjang masing-masing 116 mm.

Pada antena ini dipilih jumlah elemen 12, dengan pertimbangan cukup panjang sehingga lebih sensitif, namun masih cukup pendek untuk dapat dibawa-bawa.

Pembuatan Antena Coaxial Collinear

Tahap pertama adalah memotong kabel koaksial. Pada setiap ujung disisakan kabel inti sekitar  5 cm, untuk disolder ke selubung pada elemen sebelahnya. Jadi panjang total setiap kabel yang dipotong adalah 116mm + 5 cm + 5 cm = 21.6 cm

Memotong kabel koaksial
Memotong kabel koaksial

Selubung dikupas dengan menggunakan tang potong, dengan dilebihkan sedikit. Kemudian panjang selubung digerinda dengan Dremel sampai tepat di 116 mm. Kabel Hansen dengan selubung tembaga keras ini dapat digerinda sampai panjangnya tepat di 116 mm. Pengukuran panjang dilakukan dengan menggunakan jangka sorong.

Trimming dengan Dremel
Trimming panjang selubung dengan Dremel

Setelah selesai semuanya, didapat 12 elemen kabel yang siap disambung-sambung.

Kabel koaksial selesai dipotong
Kabel koaksial selesai dipotong

Tahap berikutnya adalah menyambung elemen-elemen tersebut. Pada contoh artikel (Coaxial Collinear Antenna for ADS-B Receiver ) penyambungan dilakukan dengan menyelipkan konduktor tengah ke serabut selubung. Pada kabel Hansen ini penyambungan dilakukan dengan menyolder konduktor tengah ke selubung di elemen sebelahnya. Ternyata diperlukan solder dengan daya besar karena tembaga sangat menyerap panas, sehingga panas cepat tersebar ke sepanjang kabel.

Menyolder antena collinear
Menyolder antena collinear

 

Berikutnya antena yang sudah tersambung ditempelkan ke batang kayu sebagai penguat, dan antena dapat digunakan. Berikut ini foto antena coaxial collinear 1090 MHz 12 elemen disandingkan dengan antena ADS-B buatan FlightAware.

Pengujian Antena

Dari hasil pengukuran, penerimaan sinyal dengan antena coaxial collinear lebih bagus dibandingkan dengan antena FlightAware. Ada kemungkinan hal ini disebabkan redaman kabel Hansen lebih bagus daripada kabel asli bawaan dari Flightaware. Jadi belum tentu antena buatan sendiri lebih bagus.

Panjang kabel kedua antena adalah sama-sama 10 meter.

 

Ujicoba Antena Colinear
Ujicoba Antena Collinear

Perbandingan redaman kabel antena pada foto:

  • Redaman kabel Hansen: 13.6 dB/100m
  • Redaman kabel Flightaware (Bieffe Cavi CO 100 AF) : 32 db/100m

Berikut ini contoh pengamatan pesawat yang sama dengan kedua sistem tersebut:

Perbandingan rekaman ADS-B
Perbandingan rekaman ADS-B

Gambar kiri adalah RTL-SDR dengan antena Coaxial Collinear, sedangkan gambar kanan adalah perangkat penerima ADS-B dari Flightware ( Flightaware Feeder dengan antena Flightaware). Dari perbandingan gambar tersebut nampak bahwa untuk GIA725, antena coaxial collinear merekam sinyal pesawat lebih awal.

Kesimpulan

  • Dari percobaan sejauh ini dapat disimpulkan bahwa antena coaxial collinear 12 elemen ini mempunyai kinerja lebih baik dibandingkan antena ADS-B bawaan dari Flightaware

Referensi

Save

Konektor MCX male ke SMA female untuk DVB dongle

DVB dongle untuk TV digital umumnya menggunakan konektor MCX, sedangkan perangkat antena kebanyakan menggunakan konektor SMA dengan impedansi 50 ohm.

Jadi kadang diperlukan perangkat untuk menyambungkan MCX ke SMA. Di sinilah perlunya konektor MCX male ke SMA female.

 

MCX male
MCX male

MCX male
MCX male

Koneksi MCX ke SMA untuk DVB dongle
Koneksi MCX ke SMA untuk DVB dongle

SMA female
SMA female

N Connector Female RG8 Clamp

N Connector Female RG8 Clamp masih dalam bungkusan

N Connector Female to RG8 clamp
N Connector Female to RG8 clamp

Konektor N female clamp sudah dibuka, terlihat komponen-komponennya. Ada karet untuk kedap air.

N Connector Female to RG8 clamp
N Connector Female to RG8 clamp

 

Berikut ini contoh konektor tengah yang cacat:

Konektor tengah RG8 female
Konektor tengah RG8 female

 

Konektor tengah RG8 female
Konektor tengah RG8 female