Projektarbete Med PIC-processorer Kursen: Tillämpad digital teknik med PIC-processorer 7.5HP (IL131v) KTH.
Download
Report
Transcript Projektarbete Med PIC-processorer Kursen: Tillämpad digital teknik med PIC-processorer 7.5HP (IL131v) KTH.
Projektarbete Med PIC-processorer
Kursen: Tillämpad digital teknik med PIC-processorer 7.5HP
(IL131v) KTH
1
2
Servo
VÄNSTER
HÖGER
Större utslag ger
Större utslag ger
snabbare ->>
hastighet.
<<-snabbare
hastighet.
Mindre utslag ger
Mindre utslag ger
långsammare ->
hastighet.
<-långsammare
hastighet
Servo
3
Joystick utslag för olika versioner
Kontinuerlig version
Servo version
Ju mer utslag på Joysticken
Ju större differensen är
desto kortare tid mellan
utställningen av motorn
spolar
mellan nedre gräns om AD
omvandlaren desto fler antal
utställningar av motorn
4
Lägen och Dioder
Lägen för Kontinuerligversion
Lägen för Servo-version
När Joysticken är i mitten-
När Joysticken är i mitten-
läget så Lyser en grön diod
Om Joysticken förs i sidled
(höger eller vänster) så ändras
grön diod till Blå diod.
läget så Lyser en grön diod
Om Joysticken förs i Sidled så
ändras dioden till röd
När först när motorn är färdig
och joysticken är tillbaka i
mitt läge så slår dioden om
till grön
5
Knapp/Givare
Knapp på Joystick
Givare på kugghjul
Startar lysdioder på kameran
Givaren säger till när ”servon”
(Alternativ) Tutar med en
summer
har kommit tillbaka till
ursprungsläget.
6
7
Kort om AD- omvandling
AD-omvandlaren ger ett tal inom intervallet 0-255
Detta ges av Joystickens position
8
Kort om
stegmotorer
Modeller av stegmotor
• Bipolära
• Unipolära
Skiftning av motorns spolar
• 1100
• 0110
• 0011
• 1001
Lätt att sätt att göra detta för
PIC-processorer
•
•
•
•
Pin_state=0b1100;
Pin_state=rl(Pin_state);
PORTC= Pin_state:
Delay(4);
9
Drivkretsar för stegmotorer
L293D
L293B
4- ingångar
4- ingångar
4-utgångar (Max 0.6A)
4-utgångar (Max 1A)
Separat matning
Separat matning
Inbyggd D-brygga
Saknar inbygg D-brygga
Möjlighet till enable
Möjlighet till enable
10
Kontinuerligt
Rotation (PIC nr1)
While(1)
Om knapp är
intryckt
If (Knapp
=1)
Tänd lysdiod
Joystick åt
”vänster” läge
Joystick i ”mitten”
läge
Else If
Else If
(AD<Leftline)
t: anpassas med
utslaget på
joysticken
Else If
(AD>RightLine)
(Leftline<AD &&
AD<Rightline)
Metod LEFT(t)
samt tänd Blå diod
Joystick i ”höger”
läge
Tänd grön diod
Metod RIGHT(t)
Samt tänd Blå diod
t: anpassas med
utslaget på
joysticken
11
Servo
Vinkel (PIC nrWhile(1)
2)
Om knapp är
intryckt
If (Knapp
=1)
Else If
Joystick ”Upp”
Joystick i (Leftline<AD && AD<Rightline)
"mitten” läge
Samt tänd röd
diod
Else If
(AD>RightLine)
Else If
(AD<Leftline)
Räkna ned l
Räkna upp l
Tänd lysdiod
HELST PÅ KAMERA
Joystick i
"Ned" Samt
tänd röd diod
samtidigt
använd
RIGHT(T)
While AD<
l
samtidigt
använd
Medtoden
LEFT(t)
while AD=>
l
Räkna ned för
r
(återställning)
Återställ
åt höger
Räkna ned för
l
(återställning)
Återställ
åt vänster
fortsätt till
läsgaffel ger
signal om
detta uppfylls
så tönd grön
diod
Återställ
tills signal
fås
Räkna ned r
samtidigt
använd LEFtt)
while AD>r
Räkna Upp r
samtidigt
använd
RIGHT(t)
while AD=<r
12
13