Teaching Real-Time Control Using Arduino: Timer ISR vs delayMicroseconds
Arduino microcontrollers are inexpensive and easy to program, making them very popular among hobbyists and “makers”. Arduinos are also surprisingly capable when it comes to creating real-time feedback control systems. This paper investigates several facets of using Arduino microcontrollers to teach students to create real-time control systems. A simplified approach to enforcing the real-time execution of a control law is introduced based on the delayMicroseconds function and its accuracy is compared to the standard timer interrupt approach. Initial assessment data is presented on whether or not the delayMicroseconds approach is easier for students to understand. The accuracy of the Arduino’s built-in timing function micros is also investigated.