Het één kleine transistor gebruikt voor het uitvoeren van een kleine DC motor.
Terwijl het circuit is zeer ongecompliceerd (sommige zeggen saai?) heeft een
vrij koele truc in de software - Pulse breedte gemoduleerde (PWM)
snelheidscontrole - met snelheid helling omhoog en omlaag.
Het is slechts één transistor... Ik moest iets doen om het meer
interessant!
De transistor (2N3904 NPN type) is er om de hogere
huidige vereist door de motor. (zie schema voor verbindingen).
Ik heb een paar andere speelgoed toegevoegd aan het simpele transistor circuit te maken
gemakkelijker om te zien wat er gaande is hier.
De rode LED is softwarebesturing. Het is ingeschakeld alleen terwijl de motor is
versnellen (versnellen) en uitgeschakeld terug net voordat de motor begint
vertragen.
De blauwe LED is aangesloten via de transistor collector - emitter pinnen.
Het blijkt op alleen wanneer de transistor is ingeschakeld uit. Zo het in principe vertoning
de uit periode tussen de pulsen motor rijden.
Of - sluit de blauwe LED tussen van de transistor verzamelaar en V +
zodat u eigenlijk de EMF kickback spanning zien kunt!
Video:
Een korte videoclip van deze demo in werking...
http://www.YouTube.com/watch?v=gd39Jtel2uA&feature=Youtu.be
Demo:
SPIN kan kijken een beetje vreemd op het eerste, maar het is een makkelijke taal om te leren.
Allereerst moet u het hulpprogramma van de Propeller, waarin de editor help
bestanden, voorbeelden, gemeenschappelijke objecten en de Propeller-handleiding.
Zie de link hieronder om te grijpen die.
Er zijn drie lussen in dit kleine demo-programma.
De buitenste lus - lus Forever.
En twee innerlijke lussen waardoor de oprit pulse treinen - oprit en helling naar beneden.
Oprit begint met zeer korte puls breedte en verhoogt de breedte van elk
opeenvolgende pulse in de trein.
Helling omlaag doet het tegenovergestelde, verkorting van elke latere puls in de trein.
De motor reageert zoals stroomvoorziening is ingeschakeld, loopt sneller als de macht nog aan
voor een langere periode.
Dat is echt het hart van alle puls breedte modulatie regelingen
Propeller programming tool is gratis van Parallax bij:
http://www.Parallax.com/TabId/832/default.aspx
De programmastructuur wordt bepaald door de manier van inspringen. Dus wees voorzichtig dat!
In het volgende voorbeeld kan worden gekopieerd en geplakt rechtstreeks in het hulpprogramma Prop.
Code:
{Motor.spin Richard Lamb - 15 juni 2013 cavelamb}
CON
_CLKMODE = XTAL1
_XINFREQ = 5_000_000
' keer definiëren
MSec = _XINFREQ / 1_000
USec = _XINFREQ / 1_000_000
Tlong = Usec * 600
Tshort = Msec * 300
' IO pinnen definiëren
P_LED = 06
P_Motor = 07
INGESCHAKELD = 1
UITGESCHAKELD = 0
' programma constanten definiëren
Tsteps = 120' aantal stappen per oprit
VAR
Lange X
PUB PWM_Motor_Demo
Dira [P_LED]: = 1'
Dira [P_Motor]: = 1'
outa [P_Motor]: = 0' start laag
Herhaal ' Herhaal forever
Outa [P_LED]: = 0' LED op terwijl versnellen
Herhaal X van 1 naar Tsteps stap 1' helling omhoog lus
outa [P_Motor]: = 1' beurt motorvermogen ON
waitCNT ((X*Tlong) + cnt) ' langere vertraging elke stap maakt een langere puls
outa [P_Motor]: = 0' turn motor uitschakelen
waitCNT ((Tsteps - X + 1) * Tlong + cnt) ' + 1 om te voorkomen dat 0 wikkel de teller tot 8 minuten.
outa [P_Motor]: = 1' korte vertraging om te verlengen van de ON-tijd.
waitcnt (Tshort * 5 + cnt)
Outa [P_LED]: = 1' LED uit tijdens het vertragen
Herhaal X van 1 naar Tsteps stap 1' helling naar beneden loop
outa [P_Motor]: = ON
waitCNT ((Tsteps - X + 1) * Tlong + cnt) ' kortere vertraging elke stap maakt een kortere puls
outa [P_Motor]: = OFF
waitCNT ((X*Tlong) + cnt)
waitcnt (Tshort * 5 + cnt) ' korte vertraging terwijl af uit