DAC op basis van pchannel mosfet, PWM, RC filter vraagje

Wauw wat een titlel en dat voor een elektronica leek.
Maar goed; ik heb weer een elektronica probleempje met men maairobot en ik dacht: misschien kan hier iemand mij helpen.
In marvin zit een mega die via USB power krijgt van een Arduino yun.
Die Arduino gaf via een zelfgebouwde DAC (PWM out en een RC filter) een stuursignaal aan een syren50 volgens hun instructies. https://www.dimensionengineering.com/datasheets/SyRen50.pdf. In de documentatie staat daar dit schema.

Dat werkte goed behalve 2 zaken.

  1. De yun heeft een spannings probleem en daardoor heeft de mega maar een 3.5 Volt. Daardoor komt de motor niet op volle toeren omdat syren50 5V gebruikt als volle snelheid.
  2. De aarding van de syren50 is verbonden met de aarding van de yun en mega zoals het hoort. Maar de voedingskabel (aarding) van de syren50 was losgekomen met als resultaat dat die gevoed werd door de sturings-aarding die dat niet aankon. (wie had dat nu gedacht :o )

Door dat 2de ben ik nu genoodzaakt een nieuwe schakeling te maken en ik dacht dan los ik 1 direct ook op. Maar dat bleek niet zo eenvoudig.

Om 1 op te lossen heb ik gekozen om een pchannel mosfet te nemen die de out pwm van de arduino via de drain omzet naar de 5Vout van de syren50. Dit keert het signaal wel om maar daar kan ik mee leven. Een pull up naar de drain zorgt er ook voor dat de motor uit staat als de arduino opstart/reboot …

Alles werkt eigenlijk goed op de werktafel, behalve dat de spanning nooit zakt als ik geen weerstand tussen de Analoge uitgang en de aarding steek.
Maak ik die weerstand te groot dan gaat het ijzig traag. Maak ik die te klein en de spanning stijgt niet genoeg (naar men zin). Wegens het feit dat de rc filter op de 2 hierboven genoemde problemen goed werkte dacht ik dat de syren50 wel genoeg stroom zou trekken.
Dat bleek echter niet het geval.
Ik begrijp dat dat komt omdat de spanning/stroom niet weg kan vloeien via de aarding naar de mega maar wat doe ik daar aan?

Mijn vraag is dus nu. Hoe kan ik die analoge uit spanning ook de dalingen doen volgen zonder de maximale spanning (teveel) naar beneden te trekken.

Met vriendelijke groet
Jantje

Hoi Jantje.

Ik vermoed dat het probleem veroorzaakt word doordat je een lineair gedrag verwacht.
En ik denk ook dat het gedrag in werkelijkheid meer in de richting van een logaritmisch gedrag zal zijn,
dat is dus bij een schakeling die een weerstand toevoegt die parallel met de bovenstaande condensatoren staat.
In dat geval moet je dus de PWM uitgang zodanig aansturen dat dat gedrag weer rechtgetrokken word.
Ik weet niet of je een oscilloscoop hebt (als “elektronica leek”…), maar daarmee kun je dit soort zaken best mooi zien.
Je kunt ook met een multimeter en een stuk ruitjespapier een “oscillogram” maken.
Dan zet je dus de uitgangsspanning uit tegen de PWM waarde in een grafiekje.
Dat kun je met een aantal verschillende weerstandswaardes doen (eventueel een potmeter, maar dan moet je wel telkens de waarde daarvan nameten).
Als de uitgang lineair is zie je dus een rechte lijn, als ie logaritmisch is zie je een parabool.
Vermoedelijk zul je daar ergens tussen in uitkomen.

Dit zijn wel leuke dingetjes om eens mee te spelen (= leren), maar vandaag ff niet (deze week al zo’n 65 uur gewerkt en die week is nog niet om).

Dag Mas3
Bedankt voor je input
Het niet lineair gedrag zal me .... wezen. In de meeste gevallen is het gewoon aan uit met soft start en stop.
Ik heb overlaatst een tweedehands oscilloscoop op de kop getikt en ik zie heel goed wat er gebeurd.
Ik heb op de oscilloscoop dit gedrag duidelijk gezien: Geen weerstand op de analoog uit=> spanning stijgt als verwacht maar daalt nooit. Bij mijn robot geeft dat als effect dat eens de motor aangestaan heeft hij nooit stopt.

Bij het testen met de scope kreeg ik
Een te groote weesrtand => komt nooit tot 5V.
Een te kleine weerstand => Gaat veel te traag naar 0V.
Ik vermoed dat dat te maken heeft met het feit dat bij arduino en bv 50% PWM de weerstand van de rc filter 50% aan hoog hangt en 50% aan laag.
Door de mosfet wordt dat 50% aan hoog en 50% aan niks.
Met mosfet en weerstand wordt dat 50% aan hoog en 100% aan weerstand.

Ik vraag me af dat als ik er gewoon een nchannel mosfet bij doe het dna wel zou werken. Eventueel met een extra weerstand.

Met vriendelijke groet
Jantje

Wat je ziet komt doordat je een FET gebruikt.
Die vormt nagenoeg geen belasting, waardoor de 1e condensator niet ontladen word.
Je beschreef net dat een grote weerstand betekent nooit 5 volt, en een te kleine te traag naar 5 volt, dat is omgekeerd als wat zou moeten.
Maar daarna had je het over de FET, die inverterend werkt en dan klopt het geheel weer wel.

De FET gedraagt zich tegenover het filter eerder als een (serie) condensator en is daarmee dus geen belasting die de (parallel) condensator van het filter kan ontladen.
Daarom moet je een andere manier vinden om de condensator in het filter te ontladen en dat kan alleen met een belasting oftewel een weerstand.
Het oscillogram waar ik het over had, is te meten aan de uitgang van je filter -met extra weerstand- of ook wel aan de ingang van de FET.
Dus zo:

Meten aan die Analog out dus.
Je moet ook de overige eigenschappen (te vinden in de datasheet) van de FET niet vergeten.

Je hebt volkomen gelijk Jan dat komt omdat je maar 1 FET gebruikt, een analoge uitgang heeft 2 transistoren die omschakelen. maar jij hebt er maar 1.
een oplossing is 2 fets gebruiken die dus en naar de 5V en naar de 0V schakelen.
dat kun je best doen met een RailtoRail versterker, maar als het niet zo precies hoeft kun je ook de Vin op de FET zetten, en dan de weerstand aanpassen zodat er toch 5 Volt uitkomt.
bij een Vin van 10V een R van 10k (zoals je ook al hebt) en bij 7.5V een R van 20k
lijkt me zo wel duidelijk voor jou.

Bedankt shooter.
Daar kom ik al weer een heel eind verder mee.
Jantje

Hoera hoera het werkt:-)

Ha, zo.
Ik dacht dat je twee FETs achter elkaar wilde zetten.
Weer niet goed gelezen dus :frowning:
Maar je bedoelde dus zoiets als een halve H brug.

Mooi dat het is opgelost.

ja ik bedoelde inderdaad een halve brug, alhoewel de maaier natuurlijk niet over een halve brug kan. :slight_smile:

dat kunnen trouwens ook gewone transistoren zijn natuurlijk, is beter want de FET trekt veel stroom bij schakelen

shooter:
ja ik bedoelde inderdaad een halve brug, alhoewel de maaier natuurlijk niet over een halve brug kan. :slight_smile:

Klopt, maar hij kan wel half over de brug....
Alleen word het vaak niet zo gewaardeerd als je maar half over de brug komt.