Berikut ini ada artikel ringkas untuk membuat pengendali digital tanpa terlalu banyak teori:
“PID without PhD”
https://web2.qatar.cmu.edu/~gdicaro/16311-Fall17/slides/PID-without-PhD.pdf
http://manuals.chudov.com/Servo-Tuning/PID-without-a-PhD.pdf
Pengarang artikel tersebut menulis buku kendali digital yang cukup lengkap, membahas dari teori kendali digital sampai source code, minus rotary encoder & PWM.
Tim Wescott, Applied Control Theory for Embedded Systems, Newnes 2006
Beberapa masalah:
Kemarin saya sempat utak-atik beberapa jam, ringkasannya sebagai berikut.
Beberapa hal yang mungkin membuat masalah:
1. spesifikasi rotary encoder, sanggup sampai berapa rpm?
2. interfacing encoder ke mikroprosesor. apakah sinyal dari encoder diterima dengan baik di mikroprosesor?
3. setting interupsi eksternal, apakah sudah betul?
4. waktu untuk interupsi: apakah CPU cukup cepat mengolah data sebelum interupsi berikutnya datang? Apakah interupsi yang lebih rendah prioritasnya mendapat jatah CPU?
5. apakah ada proses lain di mikroprosesor yang rebutan jatah CPU?
Penggunaan interupsi di STM32:
https://circuitdigest.com/microcontroller-projects/getting-started-with-stm32-development-board-stm32f103c8-using-arduino-ide
https://circuitdigest.com/microcontroller-projects/how-to-use-interrupts-in-stm32f103c8
Alternatif Motor Driver
Alternatif motor driver:
– TB6612FNG
– L293
– L298
– MOSFET diskrit
– BJT diskrit
DigitalWrite Lambat
https://www.peterbeard.co/blog/post/why-is-arduino-digitalwrite-so-slow/