Styra en elmotor

Det första experimentet som vi skall ta oss ann är att styra en elektrisk motor med hjälp av Arduino. Målsättningen med detta projekt är att skapa ett system där vi kan trycka en knapp för att starta och stänga av motorn. Detta kan på ytan ses vara helt komplikationsfritt och enkelt, men vi kommer att behöva hantera några knepigheter inom elektroniken för att garantera att vi inte förstör några komponenter.

För det första så stöter vi på en vanlig begränsning med Arduino, nämligen hur stora belastningar som den kan driva. Om vi tittar på Arduino’s officiella hemsida (se länk längst ner på sidan), så ser vi att en digitalutgångs maximala belastning är 20mA. Eftersom även en liten motor kan dra mer än så, behöver vi koppa in en extern strömkälla som får driva motorn. För att styra strömstyrkan från Arduino, kommer vi att använda oss utav en transistor. (Se inkoppling i steg 6, 7 och 8).

Ett andra problem som vi stöter på kan enkelt förklaras med att en motor även kan användas som generator, dvs en motor kan skapa en spänning/strömflöde. Vi behöver ta med detta i beräkningen och skapa en koppling som kan hantera detta genererade strömflöde utan att Arduino eller transistorn bränns sönder. (se vidare steg 10).

Material

För det här experimentet kommer vi att behöva följande utrustning

  • 1 st. Arduino Uno Rev 3
  • 1 st. Kopplingsdäck
  • 1 st. Transistor (Mosfet)
  • 1 st. Tryckknapp
  • 1 st. Motstånd 1k ohm (pull-down)
  • 1 st. Diod
  • 1 st. Elmotor
  • 1 st. Extern strömkälla, ex 9V-batteri
  • Kopplingskablar för kopplingsdäck
Bild på ukoppling av Arduino och en liten elektrisk motor
Bild: En elektrisk motor som stuyrs av Arduino.

Steg 1

Koppla Arduino 5V utgång till Kopplingsdäckets positiva skena nr 1 (P1).

Hem

Steg 2

Koppla Arduino Grd till Kopplingsdäckets negativa skena nr 1 (N1).

Hem

Steg 3

Placera transistorn, tryckknappen och dioden på Kopplingsdäcket.

Hem

Steg 4

Koppla den negativa polen på strömkällan till N1.

Hem

Steg 5

Koppla den positiva polen på strömkällan till Kopplingsdäckets positiva skena nr 2 (P2).

Hem

Steg 6

Koppla Transistorns G-ben till Arduinos digitala utgång 9 (D9).

Tillbaka

Steg 7

Koppla Transistorns D-ben till motorns negativa pol.

Tillbaka

Steg 8

Koppla Transistorns S-ben till N1.

Tillbaka

Steg 9

Koppla motorns positiva pol till P2.

Hem

Steg 10

Koppla diodens katod till motorns positiva pol och anoden till motorns negativa pol.

Tillbaka

Steg 11

Koppla ett pull-down motstånd mellan Arduinos digitala ingång 2 (D2) och N1.

Hem

Steg 12

Koppla P1 och D2 till knappen.

Hem

Steg 13

Koppla upp Arduino till en PC.

Hem

Steg 14

Ladda ner koden till Arduino via Arduiono IDE.

Hem

Arduino kod

Kopiera följande kod till Andrduino IDE.

Arduino kod för att slå på och stänga av en motor.
const int knapp = 0;	// Port for knappen
const int motorn = 0;	// Port för motorn
int motornPa = 0;	// variabel för att hantera motorns status

void setup() {
	//initialisera portarna
	pinMode(knapp, INPUT);
	pinMode(motor, OUTPUT);
}
void loop(){
	//Kontroller om motorn är på, dvs port 9 = HIGH
	motornPa = digitalRead(motor);
	//Vi kollar om knappen trycks ned
	if(knapp ==HIGH){
		if(motornPa == HIGH){
			digitalWrite(motor, LOW)
		}
		else{
			digitalWrite(motor, HIGH)
		}
	}
}