Doel:€250.00
Donaties:€130.00

Per saldo:€-120.00

Steun ons nu!

Laatst bijgewerkt
op 24-04-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Gewoon wat busfoto's door oranda-jin
Vandaag om 09:43:23
2nd Dutch US Convention, DRU Ulft NL 6/7 april 2024 door D_Loc
Vandaag om 09:38:55
Piko lok digitaal rijdt direct weg door meino
Vandaag om 09:35:56
19 Toen door spoorijzer
Vandaag om 09:21:24
Kleine Baan in H0 (≤ 0.5m²) door Scratchbuilt
Vandaag om 09:04:42
Les Billards du Vivarais door Sven
Vandaag om 09:04:33
Toon hier je nieuwe (model-) spooraanwinst(en)... door spoorijzer
Vandaag om 08:52:35
Bahnbetriebswerk "Altendorf" door Wim Vink
Vandaag om 08:44:28
Station Roodeschool door spoorijzer
Vandaag om 08:36:23
diorama, voor lange treinen. door Benelux795
Vandaag om 07:54:29
Raadplaatje door Benelux795
Vandaag om 07:51:23
US diorama in H0 door puntenglijder
Vandaag om 07:31:13
Baan 'begroenen', hoe, wat en waarmee? door Hans van de Burgt
Vandaag om 03:46:41
Schrootplaats door ruudns
25 april 2024, 23:48:05
Bouw NS C 8605, BC 6012 en C 6820 door prutser
25 april 2024, 23:33:55
EifelBurgenBahn door Reinout van Rees
25 april 2024, 23:09:03
NS 6000 (in schaal 0) door FritsT
25 april 2024, 23:04:33
Toon hier je pas gereed gekomen (model-)spoorbouwsels ... door Bob R.
25 april 2024, 22:40:14
Nederland jaren 50 op basis van mijn roots door defender
25 april 2024, 22:23:03
hoe diep is de kuil van een 23 meter draaischijf door peterha
25 april 2024, 22:20:53
Ijzeren Rijn: militair transport door ijzeren rijn
25 april 2024, 22:10:05
Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Schachbrett
25 april 2024, 21:39:10
Mijn eerste H0-modeltreinbaan in aanbouw door Schachbrett
25 april 2024, 21:09:44
Pfarrerwinkel bahn door Schachbrett
25 april 2024, 21:08:37
Bouw van tijdperk 1 HSM en SS rijtuigen door MathynK
25 april 2024, 20:11:23
Aachenau West door wob
25 april 2024, 19:10:24
Modelbaan schaal H0 niet geheel sluiten in pc prog door MartinRT
25 april 2024, 19:04:37
20 en 21 april MobExpo door class 37
25 april 2024, 18:16:26
Bouw van postrijtuig P 7911-7920 (plan C) van FRIE door Rob Bennis
25 april 2024, 17:45:39
Al mijn goede ideeën... door maartenvdb
25 april 2024, 17:22:59
  

Auteur Topic: PWM "trafo" // schema toegevoegd  (gelezen 30826 keer)

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #15 Gepost op: 09 april 2013, 09:48:54 »
De eerlijkheid gebiedt me te zeggen dat het eigenlijk netter is om het PWM signaal op de inputs aan te bieden en de enable te gebruiken zoals 'ie eigenlijk bedoeld is, maar ik weet het, het gebeurt vaker en er wordt in het datablad geloof ik ook over gesproken.

Het heeft wel het voordeel dat richting omdraaien dan via de PWM-signalen kan als ik het me goed herinner...

De L293D die ik heb heeft vier PWM kanalen, twee enable kanalen (EN A/B) en (EN C/D). en nog twee sens kanalen.
Die vier PWM kanalen kun je apart gebruiken. dan kun je vier motoren 1 richting op laten draaien. De twee EN poorten kun je gebruiken als rem maar moet je inschakelen als je de motoren wilt laten draaien.
Je kunt de vier PWM kanalen ook paarsgewijs gebruiken zodat de motoren voor EN achter uit kunt laten draaien. De PWM input kanalen en Output kanalen zitten, in de L293D, rechtstreeks aan elkaar.
In mijn ontwerp wil ik zo weinig mogelijk materiaal gebruiken en heb dus de vier PWM kanalen rechstraaks aan de PIC gekoppeld. Ik kan er nog voor kiezen om de twee EN kanalen permanent aan de 5V te leggen zodat de PWM signalen altijd te gebruiken zijn. Maar op dit moment heb ik er voor gekozen om de twee EN kanalen software matig te schakelen. Software matig gebruik ik de rem functie niet maar het is een extra zekerheid dat een trein blijft staan. Hij heeft immers een PWM signaal en een EN signaal uit de PIC nodig om te rijden

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re:PWM "trafo" // schema toegevoegd
« Reactie #16 Gepost op: 09 april 2013, 11:05:17 »
Het schema in je eerste post is echt te klein om te kunnen lezen. Al mijn uitspraken zijn dan ook op basis van de datasheet en hou ik het zou aansluiten. Misschien kan je deze nog even groter posten. (Tip: Plaatje uploaden)

De L293D is wel de wat beperkte versie van de chip. Ik zou zelf 600mA wat krap vinden, dit omdat je niet alleen motoren moet voeden maar ook eventuele rijtuigen. Samen met een cirkelzaag motor kan dat wel krap zijn. Maar heb je dit niet is het natuurlijk prima.

Voordeel van het sturen met de enable (zeker als je de L293 als volle H brug gebruikt) is dat de motor op de momenten dat je PWM laag doet in vrijloop gaat ipv in rem. PWM je met de ingangen heb je pwm Hoog = draaien, pwm laag = remmen. Schakel je met de enable heb je pwm hoog = draaien, pwm laag is vrijloop. Maar dit is wel een beetje vals spelen met de componenten maar is het dat niet altijd :D

Heb je de boel nu al werkende? Gebruik je nu alleen lineaire pwm (vaste frequentie, duty aanpassen)? Of heb je er voor lage snelheid nog een extra lage PWM laag over om loc kleef te verminderen? Laatste kan er denk ik voor zorgen dat je nog langzamer kunt. Dus PWM als dit:
   __            __            _______       __
  |  |          |  |          |       |     |  |
__|  |__________|  |__________|       |_____|  |________
  Kort          Kort            Lang        Kort

Ik snap je keuze voor de volle H brug. Het scheelt wel in onderdelen als je de L293 gebruikt. Een ULN2803 moet ook prima kunnen. Als je ze per 2 groepeert heb je 1a per uitgang. Samen met een relais is het ook een extreem goedkope basis. Maar dat is natuurlijk een compleet ander ontwerp. Meerdere wegen leiden naar Rome :D

Om nog terug te komen op de Arduino, leuk ontwikkelplatform. Maar zoals gezegd niet voor een product. Komt nog bij dat 9 euro nog steeds 4 keer zo duur is als een 16F628A... En ja, tuurlijk is het met een Arduino (of een AVR) ook prima mogelijk. Maar laten we gewoon verder gaan op de weg die ingeslagen is :)


Timo
Verzonden vanaf mijn desktop met Firefox

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #17 Gepost op: 09 april 2013, 11:35:19 »
Misschien kan je deze nog even groter posten. (Tip: Plaatje uploaden)


Het plaatje is nog steeds zo klein maar je kunt er nu wel op klikken en krijg je een groter plaatje wat je nog kun inzoomen.

Hoop dat het nu beter is

Rainbird

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #18 Gepost op: 09 april 2013, 12:35:21 »
Dank je Timo voor je reacties, ik heb echter nog wel wat vragen en uitleg.

De L293D is wel de wat beperkte versie van de chip. Ik zou zelf 600mA wat krap vinden, dit omdat je niet alleen motoren moet voeden maar ook eventuele rijtuigen. Samen met een cirkelzaag motor kan dat wel krap zijn. Maar heb je dit niet is het natuurlijk prima.

Het is ook nog even uitproberen hoeveel vermogen de trein vraagt, Welke zou je anders adviseren?

Citaat
Voordeel van het sturen met de enable (zeker als je de L293 als volle H brug gebruikt) is dat de motor op de momenten dat je PWM laag doet in vrijloop gaat ipv in rem. PWM je met de ingangen heb je pwm Hoog = draaien, pwm laag = remmen. Schakel je met de enable heb je pwm hoog = draaien, pwm laag is vrijloop. Maar dit is wel een beetje vals spelen met de componenten maar is het dat niet altijd :D

Daarom stuur ik de Enable ook software matig aan. als blijkt dat remmen nodig is kan dat altijd nog worden aangepast.

Citaat
Heb je de boel nu al werkende? Gebruik je nu alleen lineaire pwm (vaste frequentie, duty aanpassen)?

Nee, ik ben op een testbord bovenstaand schema aan het bouwen maar moet nog bv de potmeters inregelen zodat de PIC ze ook over de hele schaal herkent. En voor deze ga ik de Duty aan passen. De duty wordt bepaald door de stand van de potmeter (0-100%).
Het is eigenlijk geen PWM maar een stukje software van Coenen Stijn (www.elektronicastynus.be)

PBM:                                  ; PBM cyclus voor alle uitgangen
  FOR x = 0 TO PWM_cycles
    HIGH pen_a
    HIGH pen_b
    HIGH pen_c
    HIGH pen_d
    IF x >= pbm1 THEN   
      LOW pen_a
    ENDIF
    IF x >= pbm2 THEN 
      LOW pen_b
    ENDIF
    IF x >= pbm3 THEN
      LOW pen_c
    ENDIF
    IF x >= pbm4 THEN
      LOW pen_d
    ENDIF   
    DELAYMS 1 
    NEXT
    GOTO Start

Deze code doorloopt hij dus per cyclus, samen met het uitlezen van de potmeters en de schakelaars. om een voldoende reactie te krijgen en dus om vier PWM poorten te creeren. Maar het is dus ook de reden waarom ik voor een externe cristal gekozen heb om voldoende software snelheid te krijgen. want als de PIC ergens blijft "hangen" staan de treinen stil volgens mij.
Ik moet het nog uit proberen dus of het werk weet ik nog niet!

Citaat
Of heb je er voor lage snelheid nog een extra lage PWM laag over om loc kleef te verminderen? Laatste kan er denk ik voor zorgen dat je nog langzamer kunt. Dus PWM als dit:
   __            __            _______       __
  |  |          |  |          |       |     |  |
__|  |__________|  |__________|       |_____|  |________
  Kort          Kort            Lang        Kort
Timo

Deze snap ik nog niet, kun je hier een voorbeeld van geven?

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re:PWM "trafo" // schema toegevoegd
« Reactie #19 Gepost op: 09 april 2013, 14:53:01 »
Het plaatje is nog steeds zo klein maar je kunt er nu wel op klikken en krijg je een groter plaatje wat je nog kun inzoomen.
Kijk, nu kan ik pinnamen lezen :D


Dat je de PWM in software doet maakt het gewoon nog steeds pwm ;) Ik zou het alleen wel in een timer interrupt stoppen ipv in de gewone flow. Als je nu bv langer bezig bent met het uitlezen van de knoppen zal je trein langzamer of sneller gaan... Helemaal omdat deze PIC geen ADC heeft en het dus met een omweg doet... Weet zo even niet welk alternatief wel een adc heeft.

Wat ik bedoel met pwm met anti kleef ziet er in code (niet gecheckte code, gaat om idee) er zo uit:
PBM:                                  ; PBM cyclus voor alle uitgangen
FOR x = 0 TO PWM_cycles
y++
IF x == 0 THEN
HIGH pen_a
HIGH pen_b
HIGH pen_c
HIGH pen_d
ENDIF

IF y = 7 THEN
IF x == PWM_kick_cycles THEN
y = 0;
LOW pen_a
LOW pen_b
LOW pen_c
LOW pen_d
ENDIF
ELSE
IF x >= pbm1 THEN  
LOW pen_a
ENDIF
IF x >= pbm2 THEN  
LOW pen_b
ENDIF
IF x >= pbm3 THEN
LOW pen_c
ENDIF
IF x >= pbm4 THEN
LOW pen_d
ENDIF  
ENDIF
DELAYMS 1  
NEXT
GOTO Start
Om de aantal normale pwm cycles zet je de uithang langer hoog dan de instelwaarde zou vertellen. Zo zorg je (in dit voorbeeld) dat iedere 20 normale PWM cycles de uitgang hoog blijft tot PWM_kick_cycles ipv tot pbmX. Voor het effectieve gebied aangenomen dat pbmX < PWM_kick_cycles. Natuurlijk zou je dit verschijnsel uit kunnen zetten als pbmX > PWM_kick_cycles

In plaatjes, normaal met PWM zou je op een bepaalde snelheid alleen dit verwachten:
  __               __               __               __               __               __               __               __
  |  |             |  |             |  |             |  |             |  |             |  |             |  |             |  |
__|  |_____________|  |_____________|  |_____________|  |_____________|  |_____________|  |_____________|  |_____________|  |________
  Kort             Kort             Kort             Kort             Kort             Kort             Kort             Kort
  Periode 1        Periode 2        Periode 3        Periode 4        Periode 5        Periode 6        Periode 7        Periode 8
Hoe harder de trein moet hoe langer het signaal hoog is.

Maar om zo af en toe even een "zetje" te geven op lage snelheid om wel op gang te komen maar je 1 keer per y periodes het signaal langer hoog dan je normaal zou doen. Krijg je dit:
  __               __               __               __               __               __               ________         __
  |  |             |  |             |  |             |  |             |  |             |  |             |        |       |  |
__|  |_____________|  |_____________|  |_____________|  |_____________|  |_____________|  |_____________|        |_______|  |________
  Kort             Kort             Kort             Kort             Kort             Kort                Lang          Kort
  Periode 1        Periode 2        Periode 3        Periode 4        Periode 5        Periode 6        Periode 7        Periode 8
Periode 3 is hierbij even langer dan de rest om de trein een zetje te geven. Rijdt hij eenmaal voldoet de normale pwm. Maar om te zorgen doe je zo'n schopje op lage snelheid periodiek (en dat hoeft echt niet zo vaak als hier aangegeven, is vooral proberen, afhankelijk van je PWM freqentie). Hierdoor gaat de trein wat minder kleven (= stil blijven staan of stoppen bij net iets meer mechanische weerstand).


Ook de pinnen alleen hoog maken als je begint met een nieuwe cycle. Weinig zin om de pin hoog te maken als de instelwaarde al hoger is... Dus alleen bij x = 0.

Waarom zitten pin B3 en A4 eigenlijk aan elkaar? Ook zou ik de richting schakelaar toch nog voorzien van Pull-up. Mocht de verbinding met de schakelaar los schieten ofzo zorgt dat iig niet voor rare dingen maar is de pin wel gedefineert.

Het is ook nog even uitproberen hoeveel vermogen de trein vraagt, Welke zou je anders adviseren?
Hij heeft nog een groot broertje, de L293 (zonder D). Deze is 1A. Nog wel zelf (snelle) clamp diodes plaatsen dan.

Allemaal beetje om het globale idee aan te geven :) Het precies toe te passen is aan jou.


Timo
« Laatst bewerkt op: 09 april 2013, 15:15:48 door Timo »
Verzonden vanaf mijn desktop met Firefox

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #20 Gepost op: 09 april 2013, 15:25:24 »
Hallo Timo,

Bedankt voor deze uitleg, ik ben er nog niet helemaal achter maar ga je tip wel verder uitwerken. Ik wil in de komende week zien dat ik de proef opstelling aan de praat krijg. Dan wil ik ook jouw voorstel erbij in verwerken.

Ik neem wel aan dat je "PWM_kick_cycles" als variabele moet definiëren.

En even een vraag bij gebrek aan inzicht:
waarom LOW ipv HIGH bij de "PWM_kick_cycles"

Citaat
Waarom zitten pin B3 en A4 eigenlijk aan elkaar?

Die punt op de kruising van beide draden is het midden van het werk veld toevallig, deze horen niet aan elkaar

De tip van de weerstanden op de keuze schakelaar neem ik ook mee, want ik heb met de start en stop schakelaars ook al lopen "hanissen" om ze stabiel werkend te krijgen in de simulatie opstelling.

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re:PWM "trafo" // schema toegevoegd
« Reactie #21 Gepost op: 09 april 2013, 19:15:12 »
Bekijk het zo, een trein heeft iets meer energie nodig om te gaan rijden vanuit stilstand dan om de snelheid vast te houden. Zie nu de eerste PWM en stel dat het genoeg is om een trein te laten rijden maar niet genoeg om te gaan rijden. Door dan af en toe even wel een lange puls te geven geef je de stilstaande trein een zetje om te gaan rijden.

PWM_kick_cycles mag vast gekozen worden. Maar welke waarde goed werkt is afhankelijk van de PWM frequentie en om de hoeveel cycles je de PWM puls langer maakt. Als ik zo even snel kijk hoe ik het had toegepast had ik een PWM signaal met een frequentie van 1,95kHz. Om de +-390ms maakte ik de output voor +-40ms hoog als de snelheid > 0 is. Maakt dus ongeveer 3 keer per seconde de uitgang voor 40ms hoog, ongeacht hoe lang een periode hoog zou zijn met normaal PWM. Dus om de zoveel normale duty cycle periodes een paar periodes hoog. Verhouding korte pulsjes langs pulsjes in me tekening kloppen dus niet. De lange zijn enkele periode. Maar dit is wel op 1,95kHz. Ik zou niet weten welke snelheid je met software haalt. Maar zeg 500Hz met 128 rijstappen moet denk ik wel lukken en is meer dan hoog genoeg.

Eigenlijk dus boven op de normale PWM frequentie met % duty cycle (wat dus de snelheid bepaald) maar daar boven nog een trage PWM van 3Hz met een dutycycle van 40:390 = 9.3%.

Deze waarde heb ik met test bepaald dus zit verder geen wiskunde achter :D De verhoudingen kun je dus wat mee spelen. Bijvoorbeeld door in een test programma de 2e potmeter dit te laten bepalen en te kijken hoe goed een trein hier op reageert.

Ik maak hem LOW omdat de periode altijd hoog begint en langer hoog blijft al naar gelang pbmX (potmeter waarde) hoger wordt. Is de waarde hoog gaat de pin LOW tot hij klaar is. Dit wil je nu uitstellen. Mijn code klopt nu niet echt. Ik ga er nu van uit dat de kick pulsen korter zijn dan een normale periode maar zoals ik het had toegepast is een kick puls (de lang) langer dan 1 periode. Hoe dit code technisch wel klopt laat ik even aan jou over. Anders blijft er geen schrijven meer aan :D


Timo
Verzonden vanaf mijn desktop met Firefox

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #22 Gepost op: 09 april 2013, 19:30:48 »
@Timo,

Dak voor de uitleg, ik zal eerst hem opbouwen en programmeren zoals ik het heb en uitproberen en dan ga ik kijken of ik jouw advies kan intergreren in mijn ontwerp. Ik snap het pricipe, nu alleen de uitwerking nog.

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #23 Gepost op: 16 april 2013, 00:34:36 »
Vanavond mijn test print opgebouwd en met een motortje proef gedraaid.

resultaat: niks.

Nu geen puf meer om storing te zoeken, binnenkort alles maar eens na meten.

dimo1_dimo1

  • Offline Offline
  • Berichten: 3378
Re:PWM "trafo" // schema toegevoegd
« Reactie #24 Gepost op: 16 april 2013, 07:45:16 »
wel gedacht aan de gemeenschappelijke ground?
groeten,
Auke

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re:PWM "trafo" // schema toegevoegd
« Reactie #25 Gepost op: 16 april 2013, 09:44:36 »
Altijd jammer als een schakeling niet in een keer doet wat je wilt :( Je zou een LEDje op de uitgangen van de PIC kunnen aansluiten om te zien of die wel het juiste uitstuurt.


Timo
Verzonden vanaf mijn desktop met Firefox

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #26 Gepost op: 16 april 2013, 09:47:49 »
Ja dat wel maar ik heb de weerstanden die de handleiding van de programmer aangeeft voor het programeren er niet tussen zitten. De pinnen 3, 4, 5 en 6  hebben een weerstand nodig tussen de chip en de rest van het circuit. De programmer aansluiting zit dan tussen de chip en de weerstand. Als je net op de verkeerde pin stroom afname of toevoer van uit het circuit hebt, dan programmeert hij niet goed. Ik heb dit al eerder gehad.
Het punt is namelijk hij doet helemaal niks, terwijl de vorige schakeling (pot meter met lcd scherm het wel goed deed.
Deweerstanden ga ik er nog even tussen zetten en alles even na meten. of de schakelaars en pot meters wel doen wat ze doen moeten.

Ik doe de PIC "in circuit" programeren, lekker handig als je achteraf aanpassingen wilt maken.

De gemeenschappelijke grond klinkt ook logisch in dit verhaal, die ga ik zeker ook nog controleren

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #27 Gepost op: 17 april 2013, 09:32:31 »
Gisteren op de beschreven pinnen de weerstanden aangesloten maar helaas kwam het nog niet tot leven.
Her en der wat metingen gedaan en de schakelaars lijken te werken, de potmeters ook maar de PWM uitgangen van de PIC geven geen verandering in uitvoer (met DMM gemeten)

Zal eerst de hele test opstelling nog een keer moeten kontroleren.

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #28 Gepost op: 17 april 2013, 10:03:51 »
Hallo timo,

Ik lees nog even onderstaande opmerking van jou:
Citaat
Ik zou het alleen wel in een timer interrupt stoppen ipv in de gewone flow. Als je nu bv langer bezig bent met het uitlezen van de knoppen zal je trein langzamer of sneller gaan...

Dit heb ik nog nooit gedaan, zat net even wat te googlen maar daar werd ik nog niet echt wijzer van, heb jij een handleiding met de gedachtengang en werkwijze van deze timer interrupts in PICbasic, een website mag ook, al is het een online cursus

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re:PWM "trafo" // schema toegevoegd
« Reactie #29 Gepost op: 17 april 2013, 10:09:01 »
Hallo Dimo1_dimo1

ik heb mijn commentaar maar even hier neergezet

Er hangt van alles achter de PIC, ik programmeer hem "In circuit" Daar zijn een drietal weerstanden voor die de scheiding maken tussen programmer en de rest van het circuit. Deze heb ik er inmiddels tussen maar het mocht nog niet baten. helaas.

De programmer geeft aan dat alles goed is gegaan maar de PIC doet niets. vaak zou je zeggen hij doet wel wat en misschien vreemd maar niks is erg weinig, maar zal daar nog eens naar zoeken