Ik wil een bipolaire stappenmotor aansturen met een rotaryencoder.
Voor de stappenmotor hat ik een L297N / L298 combinatie in gedachten.
Nu zit ik alleen nog met de aansturing van de 297.
Het is de bedoeling dus dat ik met een rotaryencoder de 297 aanstuur.
De encoder geeft 2 pulssignalen af met een fase verschuiving.
De 297 heeft echter 1 pulssignaal nodig en een draairichting.
Tussen de encoder en de 297 moet dus een circuitje komen om de vertaalslag te maken.
Heeft iemand een idee om dit op te lossen ZONDER microcontroller?
Fuzzbass
Mijn echte naam: Joris | Mijn elektronica website: Fuzzcraft.com
Laat de 297 er tussenuit.
De encoder geeft een quadratuur signaal af, en de stappenmotor wordt aangestuurd met quadratuur signaal. Dat hoef je verder niet meer te vertalen.
Ik bedoel een eenvoudige encoder met 2 pulssignalen die elkaar overlappen:
A: 00110011001100
B: 01100110011001
De 298 heeft 4 signalen nodig. Ik neem aan dat je bedoelt dat ik dan 2 signalen moet inverteren voor C en D zodat ik het volgende krijg:
A: 00110011001100
B: 01100110011001
C: 11001100110011
D: 10011001100110
Hiermee kan ik inderdaad direct de 298 aansturen maar dit heeft als nadeel dat altijd beide spoelen onder spanning staan. Dit wil ik voorkomen omdat dat onodig veel stroom gebruikt en warm wordt.
Nu is de clock van de 297 niet zo'n probleem. Die kan ook met 1 signaaltje van de encoder af. Ik heb dus nog iets nodig om de richting uit te lezen uit de encoder.
SparkyGSX
Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken
Neem een D-flipflop, waarvan je de clock input aan een signaal van de encoder hangt, en de data input aan de andere. Afhankelijk van de draairichting zul je dan een 1 of een 0 aan de uitgang zien. Nadeel hiervan is wel dat je in sommige gevallen een stapje teveel doet, en dat je alleen stapt op de opgaande flank van een van de signalen, dus niet op alle 4. Als je dat wilt, wordt het wat moeilijker.
Overigens kun je een D-flipflop ook van logische poortjes maken, daar weet Google alles van.
elmowww
PA0EJE - www.eje-electronics.nl - e.jongerius[aapje]eje-electronics.nl - EJE Electronics - Elektronica/firmware ontwikkeling
Uitgang encoder:
____----____----____
--____----____----__
Als de driver triggered bij een opgaande flank (of een neergaande flank)
kan je de encoder direct aan je step en dir signalen hangen...
[Bericht gewijzigd door elmowww op (98%)]
Dat van die flip flop snap ik niet helemaal. Misschien wil SparkyGSX mij dit nog een keer uitleggen?!
Weten jullie misschien ook iets om de encoder te ontdenderen of is dat niet nodig? Mij lijkt dat de 297 geen gedender aankan.
Mijn kennis van electronica is echt minimaal maar ik hoop veel van jullie te kunnen leren. Graag dus veel uitleg en eventueel schema's.
SparkyGSX
Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken
Of je het ding moet ontdenderen, is een beetje afhankelijk van de mechanische constructie van de encoder. Als deze uitgevoerd is met metalen tracks en contacten, moet je hem wel ontdenderen, als hij optisch werkt, hoeft dat niet perse (maar in sommige gevallen toch).
Uitleg: http://engknowledge.com/rotary_optical_incremental_encoder.aspx
Het hangt ook af van het type rotary encoder die je gebruikt. Sommige doen per 'klik' een deelstap uit de 4 mogelijke toestanden van de uitgangen (00-01-11-10), andere doen per klik zeer snel de volledige sequentie waarbij de uitgangen in de 'ruststand' altijd beiden laag zijn (dan moet je gewoon kijken welke uitgang eerst hoog wordt).