Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Arduino

...

kehitysalustaa

...

voi

...

melko

...

helposti

...

käyttää

...

apuna

...

ohjattaessa harjatonta DC-moottoria

...

(BLDC-motor).

...

Tässä

...

yksinkertaisessa

...

esimerkissä

...

ohjauslaitteena

...

on

...

käytetty

...

Arduino

...

Megaa,

...

joka on ohjelmoitu lähettämään moottorin nopeudensäätimelle oikeanlaista jännitettä käyttäen apuna pulssinleveysmodulaatiota (PWM).

...

Moottori

...

ja

...

nopeudensäädin ovat

...

Kyoshon

...

pienoismallikäyttöön

...

valmistamia

...

Team

...

Orion

...

Vortex

...

Experience 2 sarjan tuotteita (moottori:

...

ORI28175

...

ja

...

nopeudensäädin:

...

ORI65011).

...

Moottorin nopeuden ohjaamiseen käytettiin 470R potentiometria, joka kiinnitettiin Arduinoon. Erillisenä virtalähteenä moottorille käytettiin 7,2V akkua, joka kytkettiin nopeudensäätimeen. 

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> nopeuden ohjaamiseen&nbsp;käytettiin 470R [potentiometria|Potentiometri], joka kiinnitettiin Arduinoon. Erillisenä virtalähteenä moottorille käytettiin 7,2V akkua, joka kytkettiin nopeudensäätimeen.&nbsp;

Ohjelmassa käytetty koodi löytyy Arduinon omilta [sivuilta|http://www.arduino.cc/en/Tutorial/knob] ohjeena potentiometrin käytöstä&nbsp;servomoottorin ohjaamisessa. Tässä esimerkissä [servomoottori|https://wiki.metropolia.fi/display/koneautomaatio/Servomoottori] on korvattu edellä mainitulla moottorilla&nbsp;sekä nopeudensäätimellä.

Käytetty koodi:

\#include <Servo.h>&nbsp;

Servo myservo;  &nbsp;// create servo object to control a servo&nbsp;

int potpin = 0; &nbsp; // analog pin used to connect the potentiometer

int val;   &nbsp; &nbsp;// variable to read the value from the analog pin&nbsp;

void setup()

{&nbsp;

myservo.attach(13)&nbsp;&nbsp;  // attaches the servo on pin 13 to the servo object&nbsp;
}&nbsp;

void loop()&nbsp;

{&nbsp;

&nbsp;&nbsp;  val = analogRead(potpin); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;           // reads the value of the potentiometer (value between 0 and 1023)&nbsp;

&nbsp;&nbsp;  val = map(val, 0, 1023, 0, 89);   &nbsp; &nbsp; // scale it to use it with the servo (value between 0 and 90)&nbsp;

&nbsp;&nbsp;  myservo.write(val); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;                  // sets the servo position according to the scaled value&nbsp;

&nbsp;&nbsp;  delay(15); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;                           // waits for the servo to get there&nbsp;

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.

Suuntaa-antava kuva kytkennöistä:

Image Added