...
Ohjelmassa käytetty koodi löytyy Arduinon omilta sivuilta ohjeena potentiometrin käytöstä servomoottorin ohjaamisessa. Tässä esimerkissä servomoottori on korvattu edellä mainitulla moottorilla sekä nopeudensäätimellä.
Käytetty koodi:
Code Block |
---|
#include <Servo. |
...
h> Servo myservo; |
...
// create servo object to control |
...
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
void setup()
{
a servo int potpin = 0; // analog pin used to connect the potentiometer int val; // variable to read the value from the analog pin void setup() { myservo.attach(13) |
...
// attaches the servo on pin 13 to the |
...
servo object } void loop() |
...
{
...
{ val = analogRead(potpin); |
...
// reads the value of the potentiometer (value between 0 and 1023) val = map(val, 0, 1023, 0, 89); |
...
// scale it to use it with the servo (value between 0 and 90) |
...
myservo.write(val); |
...
// sets the servo position according to the scaled value
delay(15); // waits for the servo to get there |
Kysenen koodi määrittää servomoottorin asennon potentiometrin asennon perusteella. Koska servomoottorin sijaan käytettiin BLDC-moottoria, määrittää potentiometrin asento tässä tapauksessa moottorin pyörimisnopeuden. Käynnistettäessä laiteistoa on potentiometrin oltava ääriasennossa, riippuen siitä miten päin potenitiometrin + ja - navat on kytketty, jotta nopeudensäätimen esiasennettu ohjelmisto lähtisi käyntiin. Nopeudensäädin ilmoittaa toiminnan käynnistymisestä äänimerkillä. Tämän jälkeen moottorin nopeutta pystyy säätämään muuttamalla potentiometrin asentoa.
...