8_5 Tilt Motor Control

Tilt Motor Control

Code

The code in the editor below is ready to run! Plug Code Lab Mini in to your computer's USB port, make sure that your Code Lab Mini Sensor Trio Add-On (sold separately) is attached, and hit 'Upload Your Code!' to see what it does. Change something in the code, like a delay or pin number. Try to add something new to the program - it's yours to tinker with! You can always press the 'Restore' button to return the code to the working example.

If you haven't set up your Code Lab Mini Sensor Trio Add-On yet, visit Chapter 0 to watch a video showing you how to do that.


// Tilt Motor Speed Control: Tilt Code Lab Mini + Sensor Trio Add-On right to increase motor speed, left to decrease it int speed = 50; //create a variable named speed that is an integer (whole number) with starting value of 50 so the motor is buzzing to begin with void setup() { pinMode(3,OUTPUT); //Motor pinMode(A4,INPUT_PULLUP);//Left Tilt Sensor pinMode(A5,INPUT_PULLUP);//Right Tilt Sensor } void loop() { if(digitalRead(A5)==LOW){ //If Code Lab Mini is tilted right... speed++; //increase the value of speed by 1 delay(30); //Pause for 30 milliseconds to control the speed of the change } else if(digitalRead(A4)==LOW){ //If Code Lab Mini is tilted left... speed--; //decrease the speed variable by 1 delay(30); //Pause for 30 milliseconds to control the speed of the change } analogWrite(3,speed); //use the variable as the analogWrite strength (0 to 256) of the motor if(speed == 255 || speed < 50){ //if speed equals 255 (max analogWrite value) OR is less than 50 ... digitalWrite(3,LOW); //Turn off the motor speed = 50; //reset the variable to 50 } } // (c) 2023 Let's Start Coding. License: www.letsstartcoding.com/bsdlicense
 

Walkthrough Video

Watch the video for a line-by-line explanation of how the example program works. Then you'll be ready to make some changes of your own!

Challenges

Coming Soon!