PIC gestuurd motortje draait te langzaam.

vergeten

Golden Member

Ik heb een apparaatje (geen type of merk) wat vermoedelijk niet doet wat ervan verwacht wordt.
Of het ooit wel goed heeft gewerkt is niet (meer) te achterhalen.
Er zit in een PIC16C54B (Microchip), draait op x-tal van 3.2786 Mhz en een CD4050BE (Harris) die een motortje aanstuurt.
http://pdf1.alldatasheet.com/datasheet-pdf/view/74970/MICROCHIP/PIC16C…
http://www.datasheets360.com/pdf/-866458207609431198
Dat motortje heeft een vertraging van 128:1, doet nu 20 sec over een omwenteling, en drijft een tandwiel aan.
De werkspanning van deze 2 draads DC motor is onbekend en de gegevens zijn:
ESCAP RT 1.011.22.0360 Kaiman Mechatronik SA 58 Swiss made K24 128:1 AB 09-1997.
Na inschakelen draait het motortje rechtsom en na bepaalde tijd linksom dan weer rechtsom etc.
Aan de PIC16C54B zit een rotary codeswitch (s-2010A) met standen 0 t/m 9 en brengt geen enkele verandering teweeg op welke stand dan ook.
http://my.rs-online.com/webdocs/0fb6/0900766b80fb6575.pdf
Wat heb ik al gedaan:
Rotary codeswitch nagemeten volgens de waarheidstabel = OK.
Sturing (CD4050) van motortje uitgetekend en spanningen gemeten, de CD4050 wordt gevoed met 4,56v. en er komt maar ongeveer 0,7 volt op de motor.
Er staan steeds 2 poortjes parallel (pin 3/2 en 5/4) de uitgang daarvan hangt aan de min van het motortje.
De plus van het motortje wordt gestuurd door de andere parallelle poortjes (pin 11/12 en 14/15).
De overgebleven 2 poortjes sturen een LED.
De motor stuurpoortjes staan afwisselend te sourcen en sinken en regelen zo de draairichting.
Er valt wel erg veel spanning over de fets in de CD4050 weg waardoor de motor waarschijnlijk zo langzaam draait, is mijn redenering. Of is er een andere reden?.
Ik heb nauwelijks kennis van PICS en geen apparatuur om het programma uit te lezen.
In een andere discussie schreef "pros" dat het mogelijk is een 2e CD4050 bovenop de bestaande te solderen, zou dat helpen?
https://www.circuitsonline.net/forum/view/64880/
Hoe laat ik hem sneller draaien?

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.
Hugo Welther

Moderator

Heb je het motortje al eens los gehaald en dan de spanningen gemeten op de uitgangen van de 4050.

Het enige dat tussen jou en je doel staat is alles wat jij jezelf verteld dat je het niet kan.
vergeten

Golden Member

Op 19 november 2016 23:38:15 schreef Hugo Welther:
Heb je het motortje al eens los gehaald en dan de spanningen gemeten op de uitgangen van de 4050.

Uit de onbelaste CD4050 komt 4,73 volt. De voedingsspanning van de CD4050 is belast lager (4,56v) maar stijgt onbelast naar 4,73 volt.
Het motortje heeft nauwelijks kracht.

[Bericht gewijzigd door vergeten op zaterdag 19 november 2016 23:52:48 (27%)

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.

Het is waarschijnlijk de stuurprint van een koffer die horloges draait van zeer luie en vooral rijke mensen ;-)
Kijk maar eens hier in de hoofdcatalogus onder de producten genaamd rotor;

http://www.scatoladeltempo.com/en/history/general_catalogue/

Misschien kan je hen om een advies vragen.
Uit de omschrijving wordt je in elk geval wel wat wijzer als het gaat om de wijze waarop e.e.a. zou moeten functioneren.

vergeten

Golden Member

Op 20 november 2016 00:30:50 schreef 240diesel:
Het is waarschijnlijk de stuurprint van een koffer die horloges draait van zeer luie en vooral rijke mensen ;-)

Dus....nu kan ik hulp van CO wel op m'n buik schrijven zeker! ik ben niet rijk. :-)

Kijk maar eens hier in de hoofdcatalogus onder de producten genaamd rotor;

http://www.scatoladeltempo.com/en/history/general_catalogue/

Misschien kan je hen om een advies vragen.
Uit de omschrijving wordt je in elk geval wel wat wijzer als het gaat om de wijze waarop e.e.a. zou moeten functioneren.

Deze staat er niet (meer)bij en is, gezien de datum op het motortje, ook al wat ouder.
Hij komt van een kringloopwinkel en omdat hij nog wel draait vinden ze het daar dat hij in orde is. Ik stuur ze een mail maar verwacht niet daar veel wijzer van te worden.
Zal wel een verwijzing naar een dealer worden :(

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.

Heb je het motortje al eens geprobeerd op een 1.5V batterij? of een voeding tot 5V.

edit: maar ik vermoed dat er toch iets niet juist is met de pic aangezien de BCD instelling niet meer werkt.
Je zult een scoop van doen hebben om iets beter te kunnen meten dan met een voltmeter, waarschijnlijk is dat een PWM sturing(er staat maar 0.7V over de motor), kan ook met insteltijden te maken hebben.
Maar met de gegevens die je nu gemeten hebt is dat niet te achterhalen.

LDmicro user.
fatbeard

Honourable Member

Ik zou gewoon die 4050 vervangen, die kosten de wereld niet (wel dertig hele centen).
Al blijft het wel een heel grote nono om een motortje aan te sturen met twee CMOS inverters: op 5V kunnen die maar 1.6mA leveren, zelfs twee parallel is met 3.2mA wat weinig voor een motortje (zelfs voor een ENCAP). Meten is weten.
Als de motor zwaar belast wordt (omdat het spul aanloopt bijv.) gaat het een tijdje goed, totdat een van de twee poortjes te heet wordt en overlijdt door thermal runaway...
Een tweede IC eraan parallel zetten zal weinig uithalen (zelfs als ze van dezelfde fabrikant zijn) omdat een goede thermische koppeling tussen de twee chips ontbreekt.

Uit de beschrijving van het concept "Rotor" in die catalogus begrijp ik dat elk programma een looptijd heeft van ettelijke uren (24?). Dan zul je op een korte tijd erg weinig verschil zien tussen de verschillende standen van de schakelaar...
En omdat het ding bedacht is om een horloge rond te draaien kan ik me voorstellen dat 20 sec. per omwenteling precies volgens spec is.

Een goed begin is geen excuus voor half werk; goed gereedschap trouwens ook niet. Niets is ooit onmogelijk voor hen die het niet hoeven te doen.
vergeten

Golden Member

Op 20 november 2016 09:20:21 schreef fatbeard:
En omdat het ding bedacht is om een horloge rond te draaien kan ik me voorstellen dat 20 sec. per omwenteling precies volgens spec is.

De 20 sec voor een omwenteling is op de motoras gemeten.
Daarop zit een tandwiel met 18 tanden die een 48 tanden tandwiel aandrijft.
Dus het gaat nog eens 2,66 keer langzamer, de horloges draaien maar 1 omwenteling per 53,33 seconden dat is erg langzaam.

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.

In dit geval kan je ongestraft zo veel CD4050's op elkaar solderen als nodig is. Maar beter is om te controleren of de originele CD4050 defect is en zo ja, deze vervangen. Of tussen de CD4050-uitgang en motor deze schakeling toepassen https://www.uploadarchief.net:443/files/download/npn_pnp.jpg

("uitgang opamp" wordt geknoopt aan een uitgang van de CD4050 en "gate mosfet" wordt geknoopt aan de motor). Je hebt twee stuks van deze schakeling nodig, dus in totaal 4 transistoren.

Shiptronic

Overleden

Waarom zo die te langzaam draaien? lijkt me nog steeds een aanname?
Is dit om de uurwerken "op te winden" ?

Wie de vraag stelt, zal met het antwoord moeten leren leven.
vergeten

Golden Member

Op 20 november 2016 09:20:21 schreef fatbeard:
Ik zou gewoon die 4050 vervangen, die kosten de wereld niet (wel dertig hele centen).
Al blijft het wel een heel grote nono om een motortje aan te sturen met twee CMOS inverters: op 5V kunnen die maar 1.6mA leveren, zelfs twee parallel is met 3.2mA wat weinig voor een motortje (zelfs voor een ENCAP). Meten is weten.

Als dat de misbruikte max stroom is kan ik niet verklaren dat ik 14,4 mA door het motortje heb gemeten.

Uit de beschrijving van het concept "Rotor" in die catalogus begrijp ik dat elk programma een looptijd heeft van ettelijke uren (24?). Dan zul je op een korte tijd erg weinig verschil zien tussen de verschillende standen van de schakelaar...

Ik ga natuurlijk niet 24 uur naar dat ding zitten staren :-)

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.

Op 21 november 2016 00:42:04 schreef vergeten:
Ik ga natuurlijk niet 24 uur naar dat ding zitten staren

Een uurtje actief meten en proberen zou al veel opheldering brengen :p

Niets vervangen tot je min of meer zekerheid hebt.

LDmicro user.

Als je een schakeling gaat "debuggen" omdat ie niet doet wat je wilt, ga je meten en kijken of ieder onderdeel doet wat je er van verwacht.

Hier is er een "hex inverter", die 4050 of hoe dat ding ook heet, die eerder NIET inverteert, als ik je metingen goed interpreteer. Kortom, dat ding is verdacht en komt voor vervanging in aanmerking.

Daarnaast is de vraag of het motortje wel in orde is. Van mij mag je het ding direct op de 5V aansluiten. Als ie dan wel naar wens draait, is het zeker de 4050.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Lambiek

Special Member

Wat is het doel van die Rotary codeswitch?, kun je daar het toerental iets mee regelen?

Als dat zo is dan zou er een pwm signaal op je 4050 moeten staan, en als je aan de Rotary codeswitch draait zou de pwm frequentie moeten veranderen. Die frequentie kun je toch meten?

Of heeft die Rotary codeswitch een andere functie? Wordt daarmee bepaald hoelang je motor naar links en rechts loopt?

Als je haar maar goed zit, GROETEN LAMBIEK.

Als de CD4050 belast wordt met 14,5 mA dan zit hij in kortsluitmode. Spreken over inverteren of niet-inverteren is dan zinloos. Die dingen zijn behoorlijk kortsluitvast, zeker bij lage voedingsspanningen, dus hij hoeft niet kapot te zijn. Maar ook IC's mag je niet mishandelen.

Sorry. Iemand had "inverters" getekend, nu ik in het datasheet kijk, blijkt er "noninverting" te staan.

Een (moderne) PIC of AVR heeft een uitgangsweerstand van 30 - 50 ohm.

Deze CMOS chip heeft drivers van rond de 600 ohm voor de P-kant, en rond de 125 ohm voor de N-tak. Zet je er drie parallel (ik geloof nooit dat ze de andere twee ongebruikt hebben gelaten), haal je voor de pull-down kant iets vergelijkbaars met wat de PIC had gekund. De pullup kant blijft vele malen slechter.

De 4050B als buffer gebruiken naast een PIC is raar...
Hmmm. Ik heb het datasheet van de Philips variant zitten bekijken. De TI die er inzit is wel 2x beter. Maar nog zet het weinig zoden aan de dijk.

[edit] Deze oude PIC heeft een wat slechtere drive: slechts 70 ohm.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Een uitgefikte 4050 is gemakkelijker te vervangen dan een uitgefikte geprogrammeerde PIC.
In de datasheet, in ieder geval degene die ik gezien heb, werden de 4049 en 4050 tegelijk besproken. De 4050 hadden ze net als de 4049 als invertor getekend.

fatbeard

Honourable Member

Wat ik uit de foto's niet kan opmaken is hoe de voeding (welke spanning?) of het gewraakte motortje wordt aangesloten, of waar die twee draadjes heengaan. Ook de functie van JP1a en JP2a is wat vaag.
De motor (en de twee genoemde LEDs) zullen op JP1 zijn aangesloten; de dioden onder de schakelaar zijn de blusdioden en C9 vormt met de 100Ω weerstand ernaast een snubber.

Als ik de spagetti (italiaans ontwerp dus niet zo heel verrassend) probeer te ontwarren lijken zowel J2 als JP2 voedingsinput te zijn, stabilisatie voor de 4050 J2 input vindt plaats via 100Ω en zener D1. De voedingsspanning voor de PIC wordt verderop ook nog door 2 dioden en 47Ω icm zener D14 gestabiliseerd.

Het geheel lijkt te zijn ontworpen door een aankomend plaatsvervangend leerling assistent in opleiding en zonder verdere controles doorgeschoven naar produktie: zowat alles wat je fout kunt doen in voedingscircuits is ook fout gedaan, zo loopt de voeding voor de 4050 letterlijk de hele print rond terwijl de bijbehorende GND dat niet doet (de dichtstbijzijnde ontkoppeling is C10)...

Op 20 november 2016 09:20:21 schreef fatbeard:
Ik zou gewoon die 4050 vervangen, die kosten de wereld niet (wel dertig hele centen).

... zoals ook ohm pi al suggereerde.
Een onwaarschijnlijk alternatieve storing met nagenoeg dezelfde symptomen zou het kortgesloten zijn van minstens twee dioden van de vier onder de schakelaar.

Een goed begin is geen excuus voor half werk; goed gereedschap trouwens ook niet. Niets is ooit onmogelijk voor hen die het niet hoeven te doen.

De PIC werkt op 3,4V. De CD4050 op 5V. De PIC-spanning (en CD4050-spanning) is te laag en moet 5V zijn. TS moet de voeding daarop controleren.

Ik heb iets gehoord over diodes en zo tussen de 5V van de CD en de PIC. Dan is 1.6V spanningsval niet zo raar. Het gebruik van verschillende voedingen kan natuurlijk komen uit de noodzaak om de motor met een hogere spanning te laten werken. Maar de voeding van de CD en die van de PIC mogen weer niet te ver uiteen lopen. Als de CD een voeding van meer dan 2x die van de PIC heeft, gaat het 100% fout: De "hoog" van de PIC wordt door de CD als "laag" gezien. Als je gezonde marges wil aanhouden dan gaat het al veel eerder niet meer.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
vergeten

Golden Member

Bedankt voor het meedenken :-) dat geldt natuurlijk voor iedereen die hier meedenkt en bijdraagt :-)
Als ik iedereen afzonderlijk moet beantwoorden wordt dit ook een versnipperde "spagetti" thread, vandaar dat ik veel info in dit bericht zet. Hierbij dus nog wat aanvullende info.

De PCB is (door mij) lastig te reverse engineeren vanwege de spagetti sporen en 12 weerstandjes als via.
De gehele schakeling werkt op 4 dikke D cellen dus 6 volt.
Er is met vaste voeding van 5,1 5,25 volt getest en gemeten, aangesloten (op JP2) ipv de 6 volt batterij, wat ik genoeg achtte omdat de batterijspanning ook kan zakken naar 5,1 volt die waarde.
Externe voedings aansluiting (J2) zit rechtsboven op de "doorschijnende" print.
De 4 diodes nabij de schakelaar zijn in orde, net als de overige dioden (op diodetest gemeten)
J1____2,5mm jack aansluiting een externe aan/uit switch.
JP1A__is leeg, niet in gebruik.
JP2___zijn de plus en min draden van de 6 volt batterij.
JP2A__doorverbinding tussen de plus en min van 2 D cellen, meer niet.
J2____externe voedingsaansluiting, rechtsboven op de "doorschijnende" print.
JP3___de aansluiting voor het (wijzer)metertje die dmv de rode testknop(S2) de batterijstatus weergeeft.
JP1___is 8 pin header waarop een connector wordt gestoken, de indeling is vanaf het 3mm gaatje in de PCB geteld:
1__on/off switch
2__on/off switch
3__plus motortje
4__min motortje
5__min kathode bicolor LED
6__min, No connection
7__Anode groene bicolor LED
8__Anode rode bicolor LED
Wat "fatbeard" D1 noemt (is D4, slecht te zien) is een 6V2 zener waardoor de externe voeding via J2 kan plaatsvinden.
D9 = BZX55C 3V3 zener
D14 = BZX55C 5V6 zener
De 2 Diodes bij de CD4050 zijn 1N4007
Alle andere diodes zijn 1N4148 en in orde.

Het motortje (met gear 128:1) direct op 1,56v batterij trekt 20,1 mA en draait 1 omw per ±10 sec. Dat is 2 keer zo snel als in de schakeling!

Bij de Rotary switch staat op de behuizing: "Time selector" Wat de verschillende standen precies moeten doen weet ik niet.
Moet het spul sneller draaien of gaat het omschakelen van linksom naar rechtsom eerder of een combinatie daarvan?
Nog geen reaktie op mijn mail naar de Italiaanse fabrikant.

Doorgaans schrijf ik duidelijk wat ik bedoel, toch wordt het wel anders begrepen.

Het lijkt er op dat de PIC op 3,4V loopt by design. Daar verder dus niks aan doen.

Maar het design is WEL er op gericht om in princiepe (zij het met grote uitgangsweerstand door het gebruik van een slechte component) de volle 6V op de motor te zetten.

Mijn stelling: overweeg dan een betere output driver. Ik heb op de gok het typenummer 74HC4050 verzonnen en zowaar, dat bestaat, is pin compatibel en presteert op eerste gezicht minstens 2x beter....

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Lambiek

Special Member

Op 22 november 2016 22:16:04 schreef vergeten:
Bij de Rotary switch staat op de behuizing: "Time selector" Wat de verschillende standen precies moeten doen weet ik niet.

Als je hem op een ander stand zet zie je geen verschil?

Moet het spul sneller draaien of gaat het omschakelen van linksom naar rechtsom eerder of een combinatie daarvan?

Dat kun jij het beste controleren. :)

Op 23 november 2016 09:05:48 schreef rew:
Mijn stelling: overweeg dan een betere output driver. Ik heb op de gok het typenummer 74HC4050 verzonnen en zowaar, dat bestaat, is pin compatibel en presteert op eerste gezicht minstens 2x beter....

Ja, maar het blijft een slecht ontwerp in mijn ogen rew. Maar het is beter dan wat er nu op zit.

Als je haar maar goed zit, GROETEN LAMBIEK.

Op 22 november 2016 22:16:04 schreef vergeten:
Het motortje (met gear 128:1) direct op 1,56v batterij trekt 20,1 mA en draait 1 omw per ±10 sec. Dat is 2 keer zo snel als in de schakeling!

Als ik een gokje mag wagen dan is volgens mij de pic defect aangezien de rotary switch niet meer werkt en de motor goed werkt op 1,5V.
Een defecte 4050 zou ofwel de motor full speed laten draaien of helemaal niet.

Zonder scoop moeilijk te detecteren.

LDmicro user.