Modelspoormagazine forum

Modelspoor, praktijk => Modelspoor-elektronica met microcontrollers => Topic gestart door: ToThePoint op 13 januari 2012, 10:27:28 am

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 13 januari 2012, 10:27:28 am
Wel we steken van wal.
Een van de vele disciplines in de zelfbouw modelbouw zijn ongetwijfeld microcontrolers.
De toepassingen zijn legio en het zelf ontwikkelen en bouwen ermee is althans voor mij een van de meest aangename bezigheden.
Het houd het brein hier fit en het logisch denken van actie en reactie op peil.

Momenteel ben ik bezig aan een schakeling die een sein stuurt.
Een sein dat vele seinbeelden kan weergeven met een minimum aan recources.
Een minimum omdat de adressen niet oneindig zijn en zeker op grote banen een nadeel is.
Last but not least om de kosten te drukken.

Wat mijn betrachting is en steeds zal zijn is dat het ontwikkelde er voor elkeen is die er om verzoekt, maar men zal niet zijn zakken kunnen vullen me wat hier gemaakt is.

En als ik zo zit te denken hoef ik eigenlijk weer geen gedoe met sommige medemensen die het weer beter willen weten.
Soit we zien wel hoe en waar dit ons leid.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 13 januari 2012, 11:21:13 am
Ik spring mee op de kar [;)]
Zoals in het andere draadje - de aanleiding voor dit - verteld: Momenteel is mijn ?C-gebruik gericht op het (meten en) regelen van mijn kermisattracties.
 - Bij de rups en de botsauto's is het vrijwel alleen regelen (meten is louter een start/stop-knopje nakijken)
 - Bij de spiegeltent wordt er "geluisterd" naar de muziek
 - Bij de rollercoaster wordt het meer complex, want daar speelt veiligheid ook een rol (twee treintjes, geen kop-staartongevallen)

Na Mechelen 2012 ga ik me terug met mijn feitelijke modelbaan bezighouden, en wil ik in eerste instantie mijn schaduwstations (FIFO en zo) en dubbelsporige keerdriehoek automatiseren (voor DC, geen DCC)

Ik gebruik AVR's (atmel dus) en programmeer ze met BASCOM. Tot nu toe heb ik nog geen assembler-instructies nodig gehad.
Mijn favoriete microcontroller is al een tijdje de AtMega8-16PU: 28pins DIL, met tot 24 poorten, genoeg geheugen en snelheid, en niet te duur.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 13 januari 2012, 11:52:51 am
Ik wil ook wel meerijden.[:p]

Zelf ben ik zo nu een dan bezig met men eigen digitaal besturingssysteem (ligt om moment weer even stil). Het zou volledig compatibel moeten zijn met DCC.
E?n locomotief decoder werkt al gedeeltelijk de CV moeten nog worden ge?mplementeerd worden. Ben nu bezig met een decoder voor een rijtuig om de binnenverlichting en de sluitverlichting te sturen.

Ook ik maak gebruik van de ATMEL AVR [;)]. Voor de sturing een ATMEGA32 met 32-IO en 32k geheugen voor de decoders een ATTINY2313 of 261 of ATMEGA88.
Voor het programeren gebruik ik MikroC, BASCOM of Assembler (heel beperkt).

Voor het sturen van seinen, wissels, verlichting enz. ga ik niet met DCC werken, maar denk ik er aan om een RS-485 netwerk te gebruiken (er staat trouwens een leuke artikel reeks in elektor, de elektor-bus). de link met de PC is dan snel gemaakt. Bijkomen voordeel is dat je geen dure booster nodig hebt. Een paar PC voedingen verspreidt onder de baan (aantal hangt af van de grote)

grtes, Harald
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 13 januari 2012, 12:08:15 pm
Ik rij graag mee.  Wel op dit ogenblik als passagier [;)]

Buiten een poging om een led-cube te laten werken (PIC, JAL), heb ik geen ervaring.
Wie  weet, voor de aansturing van mijn yard kraan, als ik die aan het werken krijg, zou een PIC ontwikkeling een meerwaarde zijn !


Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dgrr57 op 13 januari 2012, 12:40:48 pm
Een bijkomende passagier [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 13 januari 2012, 12:45:00 pm
@Harald (Dreha): Ben je niet vergeten te zeggen dat je les geeft over die dingen? Of doe je dat niet meer? [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 januari 2012, 13:09:56 pm
Ik hoop dat de 'kar' sterk genoeg is...

Ik ben in een 'proza' bui dus hier even mijn geschiedenis:

Toen de dieren nog spraken, had ik mijn electronica diploma op zak en heb ik nog een jaartje specialisatie gevolgd.  Daar werd ik 'ondergedompeld' in de 'Digitale Technieken'.  Ik was er zo door gebeten dat ik meer wou en ook meer wou 'leren'.  Internet toen?  Alleen voor de 'happy few'...  Fora?  Geen sprake van!
Een exotische hobby (ik heb er nog zo wel gehad) en je staat op je eentje.  Boeken!  Kilo's heb ik ervan verslonden.  Trial and error (uren - dagen - maanden mee versleten)...

Om ??n en ander kort te maken: begonnen met de Z80 (voor iets of wat besturing had je RAM, PIO, CTC en natuurlijk een EPROM nodig - en onvermijdelijk een EPROM programmer en -wisser).  Even een ontwerpje maken was (als hobbyist) een werk van maanden...  Een datasheet vinden was bij manier van spreken even moeilijk als een ontdekkingsreis naar de Noordpool!

De 8051!  Een gedeeltelijke ommekeer (maar nog steeds RAM en EPROM).  Printjes waren maar de helft zo groot meer.  Maar nog steeds kilo's boeken...

Microchip, de PIC!  Oef!  Alles aan boord.  Vind je je zin niet in het ene type, neem dan een ander type.  Spotgoedkoop!  Boeken?  Buiten enkele ebooks vind je alles!

Ontwikkelomgeving?  Gratis!  Van 8 pens tot xx pens DIL en SMD.  Processorsnelheid in te stellen van  h e e l  t r a a g  tot ...

Tegenwoordig gebruik ik zelfs geen '555' meer om twee ledjes te laten knipperen; een PIC 12Fxx heeft ook maar acht pennetjes en de ledjes kunnen mooi dimmen en opgloeien in plaats van aan-uit.  Ik denk dat zo'n PICje misschien zelf goedkoper uitkomt dan een 555 en enkele componenten.

Programmeeromgeving: JAL-Edit en de JAL bibliotheken en MPLAB IDE van Microchip (alles gratis!).  Programmer PicStart Plus van Microchip.

Momenteel?  Een USB - I2C interface om enkele (ook eigen) I2C systemen eenvoudig via de PC te kunnen testen.  Waarom USB?  Eenvoudig omdat ik geen enkele PC meer heb met een seri?le poort.


citaat:
Geplaatst door ToThePoint

...En als ik zo zit te denken hoef ik eigenlijk weer geen gedoe met sommige medemensen die het weer beter willen weten...



JP ik heb ooit eens geleerd: 'veel geblaat, weinig wol!'  En zij die beter willen weten? ...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 13 januari 2012, 13:12:28 pm
Gentlemen.

Ik maak me de bedenking dat er buiten de microcontroler zowiezo ook de nodige andere komponenten ermee gepaard gaan.
Is dit dan in een ander draadje ? Of is dit eigenlijk "waar ben ik mee bezig? electronica " want buiten de microcontrolers zijn er eigenlijk nog best wel andere electronische schakelingen die (zoals dreha aangeeft) die geen microcontroler gebruiken.

Ik zit trouwens in een rechte lijn naar de finale voor het tegenspoorsein.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 13 januari 2012, 13:55:04 pm
Ik was eigenlijk al wat aan 't twijfelen om dit draadje te verplaatsen naar "KIS en andere elektronica".
-> dan kunnen eventuele "randschakelingen" ook een plaatsje krijgen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 13 januari 2012, 16:22:54 pm
@Gerolf:
Ja ik geef daar nog steeds les over, op middelbaarschool niveau wel te verstaan.
Dus ik ben zeker geen top expert in die zaken [:I] maar ik wil wel graag mee helpen.[:D]

Grts,

Harald
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 13 januari 2012, 17:20:29 pm
citaat:
Geplaatst door Gerolf

Ik spring mee op de kar [;)]
Zoals in het andere draadje - de aanleiding voor dit - verteld: Momenteel is mijn ?C-gebruik gericht op het (meten en) regelen van mijn kermisattracties.
 - Bij de rups en de botsauto's is het vrijwel alleen regelen (meten is louter een start/stop-knopje nakijken)
 - Bij de spiegeltent wordt er "geluisterd" naar de muziek
 - Bij de rollercoaster wordt het meer complex, want daar speelt veiligheid ook een rol (twee treintjes, geen kop-staartongevallen)

Na Mechelen 2012 ga ik me terug met mijn feitelijke modelbaan bezighouden, en wil ik in eerste instantie mijn schaduwstations (FIFO en zo) en dubbelsporige keerdriehoek automatiseren (voor DC, geen DCC)

Ik gebruik AVR's (atmel dus) en programmeer ze met BASCOM. Tot nu toe heb ik nog geen assembler-instructies nodig gehad.
Mijn favoriete microcontroller is al een tijdje de AtMega8-16PU: 28pins DIL, met tot 24 poorten, genoeg geheugen en snelheid, en niet te duur.



Gerolf , ik bedoelde eigenlijk dus een DCC schaduwstation. Excuus voor de onduidelijkheid[;)]
Zoal dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft. Je kan er maar van leren zeg ik[;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 13 januari 2012, 17:23:37 pm
citaat:
Geplaatst door argilla
...Zolang dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft...
Ik weet niet of dat kan. Ik kan me voorstellen dat er "specialistische" informatie wordt uitgewisseld [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 januari 2012, 19:05:22 pm
citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door argilla
...Zolang dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft...
Ik weet niet of dat kan. Ik kan me voorstellen dat er "specialistische" informatie wordt uitgewisseld [;)]



Een PIC heeft slechts 35 instructies (beperkte woordenschat), dus veel eenvoudiger dan ons Nederlands (en ook veel duidelijker - geen dubbelzinnigheden - maar ook emotieloos [^]).

Alle gekheid op een stokje: alles kan op veel manieren worden verduidelijkt: wanneer financi?le experten met elkaar praten, snap ik daar ook geen snars van.  
Wanneer dan een lieve bankbediende mij de nodige uitleg verschaft, snap ik het wel (achteraf ben ik wel de pineut en zijn mijn centjes toch weg, maar de uitleg was goed [;)]).

Hetzelfde met elektronica en controllers: het is maar hoeveel commentaar je aan alles geeft.  Een transistor met voorschakelweerstand en een een condensator eraan kan ook voor van alles dienen; zonder uitleg over hoe-wat-waarom is het niet echt duidelijk.

En iemand die er niets van kent?  Iedereen is zo begonnen!  Ook zij die zich 'expert' durven noemen (en daar reken ik mij zeker niet bij want ik leer nog elke dag bij [;)]).


Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 januari 2012, 21:00:39 pm
Ja zeg, mijn lievelings onderwerp, ik heb al zo veel projectjes geprogrammeerd in ?controllers (PIC?s) dat ik de tel al ben kwijt geraakt.  
Nu nog alles on-line zetten (ooit)?

Ik ben bereid iedereen te helpen om de eerste stappen te zetten.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 januari 2012, 21:11:31 pm
Geert, een tijd geleden al eens op je site gaan 'piepen'.  Goe bezig!
Assembler met VEEL commentaar erbij [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 13 januari 2012, 21:15:39 pm
citaat:
Geplaatst door PeterC

JP ik heb ooit eens geleerd: 'veel geblaat, weinig wol!'  En zij die beter willen weten? ...




Tja die van de patent leugen en de toemalige uitsluiting en wat diens meer.
Dat staat met stip genoteert omdat daar toen geen herstel heb gekregen na die eerroof.
Moest het nog wettelijk mogenlijk zijn om te duelleren dan had ik al lang de handschoen in iemand gezicht geslagen.
Eer en geweten staat bovenaan mijn vaandel.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 13 januari 2012, 21:23:10 pm
citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door argilla
...Zolang dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft...
Ik weet niet of dat kan. Ik kan me voorstellen dat er "specialistische" informatie wordt uitgewisseld [;)]



Een keerdriehoek voor DC. MMMM dat is een uitdaging.
Men maakt een keerlus, dus als het op DC staat dan zal bij het ompolen op DC de trein de andere kant uitgaan.

Mijn eerste idee. een bruggelijkrichter aan de motor. Men verliest wel 1,4V maar de motor krijgt steeds de polariteiten aan dezelfde aansluitingen op de motor ongeacht waar op de rails de Dc spanning staat. bijkoment nadeel is dat de loc cq trein enkel nog in 1 richting rijd. Hier kan misschien een microcontroler uitkomst bieden.
Ik heb nog tijd dus kan dat ei wel eens uitbroeden.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 januari 2012, 21:38:41 pm
citaat:
Geplaatst door ToThePoint

citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door argilla
...Zolang dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft...
Ik weet niet of dat kan. Ik kan me voorstellen dat er "specialistische" informatie wordt uitgewisseld [;)]



Een keerdriehoek voor DC. MMMM dat is een uitdaging.
Men maakt een keerlus, dus als het op DC staat dan zal bij het ompolen op DC de trein de andere kant uitgaan.

Mijn eerste idee. een bruggelijkrichter aan de motor. Men verliest wel 1,4V maar de motor krijgt steeds de polariteiten aan dezelfde aansluitingen op de motor ongeacht waar op de rails de Dc spanning staat. bijkoment nadeel is dat de loc cq trein enkel nog in 1 richting rijd. Hier kan misschien een microcontroler uitkomst bieden.
Ik heb nog tijd dus kan dat ei wel eens uitbroeden.



Hmm, ik begrijp je idee niet zo... Iets meer duidelijkheid?

Geert

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dirky op 13 januari 2012, 21:54:45 pm
Ik ga een poging doen om op de allerlaatste wagon van deze trein te springen...[:)]

Toen de dieren nog spraken (da?s feitelijk van voor uwen tijd PeterC)  waren de meeste electronische toestellen nog gloeiend heet... met lampen dus!
Alles wat programmeerbare electronica aangaat heb ik dus moeten missen.

Ik zou er echt iets willen van begrijpen maar ik mis de start.
Iemand die me bvb zegt ? koop die controller en koop die...? , ?sluit die aan als volgt?, ... doe dit, doe dat en zie wat er gebeurt...

Als ik dan een lampje zie pinken en ik besef ook waarom, zullen de volgende stappen misschien duidelijk zijn. Nu is het 1 grote mist...

Misschien kunnen jullie op de een of andere manier een praktisch beginners-voorbeeld documenteren zodat iedereen die interesse heeft op de trein kan springen en er niet altijd achteraan moet hollen zonder te zien waar die heengaat.

Van mij mag het gerust in een apart draadje zijn...

Ik zou er jullie eeuwig dankbaar voor zijn [:)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 januari 2012, 22:12:52 pm
citaat:
Geplaatst door Dirky

Ik ga een poging doen om op de allerlaatste wagon van deze trein te springen...[:)]

Toen de dieren nog spraken (da?s feitelijk van voor uwen tijd PeterC)  waren de meeste electronische toestellen nog gloeiend heet... met lampen dus!
Alles wat programmeerbare electronica aangaat heb ik dus moeten missen.

Ik zou er echt iets willen van begrijpen maar ik mis de start.
Iemand die me bvb zegt ? koop die controller en koop die...? , ?sluit die aan als volgt?, ... doe dit, doe dat en zie wat er gebeurt...

Als ik dan een lampje zie pinken en ik besef ook waarom, zullen de volgende stappen misschien duidelijk zijn. Nu is het 1 grote mist...

Misschien kunnen jullie op de een of andere manier een praktisch beginners-voorbeeld documenteren zodat iedereen die interesse heeft op de trein kan springen en er niet altijd achteraan moet hollen zonder te zien waar die heengaat.

Van mij mag het gerust in een apart draadje zijn...

Ik zou er jullie eeuwig dankbaar voor zijn [:)]




Ik begrijp wat je wil duidelijk maken. Maar er zijn andere forums (vooral elektonische) die daar meer info over geven dan een modelspoorforum.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 januari 2012, 22:50:31 pm
citaat:
Geplaatst door Dirky

...Toen de dieren nog spraken (da?s feitelijk van voor uwen tijd PeterC)  waren de meeste electronische toestellen nog gloeiend heet... met lampen dus!



Ik heb nog enkele 'dieren horen spreken'...  En met 'lampen' zijn de eerste processors gebouwd (tijdens Dolf zijn tijd [:0][:0][:0]...).


citaat:
Geplaatst door Dirky

...Ik zou er echt iets willen van begrijpen maar ik mis de start...



We zijn wel ??n en ander gewoon van jou, maar nu stel je toch een heel moeilijke vraag!

Maar in jou geval kan ik misschien een vrij eenvoudig antwoord geven (jij weet ondertussen waar Abraham de mosterd haalde, ik haal die (voorlopig) nog uit de A*di [;)]):

Je ziet een baanwachterswoning (of een elektronisch/software-oplosbaar probleem) en je wilt gaan bouwen (dat elektronisch/software probleem gaan oplossen).  Je denkt! Je analyseert die woning (of dat probleem)!  Hoe kan ik dit op een effici?nte/zo eenvoudig mogelijke manier gaan tekenen en later gaan bouwen (flowchart - programmeren).  Je tekent (bij jou in een razendsnel tempo!)...  Je gebouw verdeel je in subonderdelen (routines, procedures, functies), je bouwt (programmeert) en bij het afwerken, merk je enkele onvolkomenheden die je moet oplossen (debuggen).

citaat:
Geplaatst door Dirky

...Misschien kunnen jullie op de een of andere manier een praktisch beginners-voorbeeld documenteren zodat iedereen die interesse heeft op de trein kan springen en er niet altijd achteraan moet hollen zonder te zien waar die heengaat...



Wat betreft beginners: ik ga eens zoeken naar 'beginners handleidingen' en enkele links plaatsen.  En zijn er vragen? Shoot; het topic is net voor de middag opgestart en er zijn al twee pagina's...  ...dus blijkbaar interesse ?n deelnemers!

Programmeren: ieder normaal mens programmeert constant (of zou dat beter doen...): sta je voor een 'groot' probleem: analyseer het probleem: verdeel het in kleinere 'subprobleempjes' en zoek een oplossing voor die kleinere probleempjes en uiteindelijk gaat je 'groot' probleem opgelost geraken.  Ondertussen leg je een bibliotheek aan met 'kleine-oplosbare-probleempjes' waar je steeds kan uit putten...
...
...
Ik kan natuurlijk alleen maar voor Microchip hun producten spreken.  Atmel, AVR, BasicStamp,...  geen ervaring mee en ook geen behoefte meer om mij terug volledig 'om te scholen'...

Tot daar mijn 'proza' dag...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dirky op 13 januari 2012, 23:19:45 pm
@ Geert,

Ooit heb ik een poging gedaan op een electronica forum. Binnen de kortste keren was er een ware oorlog aan de slag tussen "so called experts" die er maar niet genoeg konden van krijgen hun voorkeur te promoten. Na 5 bladzijden wist ik nog geen bal...

Anderzijds heb ik steeds het positieve ondervonden van "leren in een vertrouwde omgeving" (iets leren aan de hand van voorbeelden uit de modelspoorwereld).
Mijn eerste vraag zou bijvoorbeeld zijn: "Hoe maak je iets om d.m.v. puls een slagboommotor aan te drijven en 2 LEDs te laten pinken?

@ Peter

beginners handleidingen; dat zou wel tof zijn!

we zien wel waar dit heen gaat... thx


Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 januari 2012, 23:45:28 pm
citaat:
Geplaatst door Dirky

..Mijn eerste vraag zou bijvoorbeeld zijn: "Hoe maak je iets om d.m.v. puls een slagboommotor aan te drijven en 2 LEDs te laten pinken?...



Dirk, ik kaats direct de bal terug en je moet logisch denken (zonder ??n woord te programmeren) en analyseer het probleem.  Welke stappen zijn er nodig?
Wat heeft die 'slagboommotor' nodig om op-en-neer te gaan?  Welke puls (positief-negatief)?  Afkomstig van een 'digitale-provider' of een schakelaar (debounce in acht nemen!)...
Analyseren!

Een leuk project om mee van slag te gaan (analytisch - zonder code!).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 13 januari 2012, 23:49:54 pm
citaat:
Geplaatst door Dirky

beginners handleidingen; dat zou wel tof zijn!
Zou ik ook wel mooi vinden. Ik snap niks van microcontrollers, want ik heb nog nergens een handleiding gevonden die gewoon praktisch vertelt wat je moet doen en wat voor gereedschappen je nodig hebt om iets voor elkaar te krijgen.
Ik ken wel iemand die zelf microcontrollers gebruikt en programmeert, maar die ziet geen kans om begrijpelijk uit te leggen wat hij nou eigenlijk aan het doen is.
Dus als iemand eens met de basics op de proppen kan komen, graag.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 14 januari 2012, 01:48:17 am
citaat:
Geplaatst door Dirky

@ Geert,

Ooit heb ik een poging gedaan op een electronica forum. Binnen de kortste keren was er een ware oorlog aan de slag tussen "so called experts" die er maar niet genoeg konden van krijgen hun voorkeur te promoten. Na 5 bladzijden wist ik nog geen bal...

Anderzijds heb ik steeds het positieve ondervonden van "leren in een vertrouwde omgeving" (iets leren aan de hand van voorbeelden uit de modelspoorwereld).
Mijn eerste vraag zou bijvoorbeeld zijn: "Hoe maak je iets om d.m.v. puls een slagboommotor aan te drijven en 2 LEDs te laten pinken?

@ Peter

beginners handleidingen; dat zou wel tof zijn!

we zien wel waar dit heen gaat... thx






Volmondig mee eens Dirk.
Dat is er nu de keuze zoals voor het soort bedieningssysteem dat u gaat gebruiken als u een modelspoorbaan gaat maken.
Met welk soort microcontroler had u graag gewerkt.
Er zijn hier die met atmel of zoiet werken of met pic's van microchip.
Er zullen er nog wel fabrikanten zijn die die maken.
Misschien een kosten bate analyse maken eerst.

Soit, even een stand van zaken.
De decoder werkt als normaalspoor seinbeeld gever of als tegenspoorsein gever. Met tegenspoor waar enkel rood, wit, geel, geel en groen knipperen als ie op tegenspoor staat.
Men kan via cv's het adres instellen, maar de keuze via cv's voor normaal of knipperbeeld te geven is nog niet in orde.
Door geknoei heb ik veel tijd verloren want had graag al een eerste filmke gemaakt met koploper die het sein aanstuurt.
Voor hen die ooit aan het microcontroler experiment beginnen !
Les 1:
Knoop dit goed tussen de oren.
Noem nooit een project b.v. abcdeV1.0.asm  
Ik had de tekstfile opgeslagen met een nieuwe naam richting eerste finale en wou V1.0 (versie 1 eerste poging) ervan maken.
De compiler (programma die tekst omzet in machinetaal en een HEX file ervan maakt dat daarna in de microcontroler kan geschreven worden) produceerde geen HEX en dat had ik niet in het snuitje ogenblikkelijk.
Ik zag wel op een gegeven ogenblik een 0 bestand en toen viel de euro.
Noem nooit bestanden die ja gaat omvormen of what ever V1.0. Ook niet V2.0 of zo. Het punt tussen de cijfer zorgt ervoor dat de programma's tilt slaan.

Conclusie:
Kieken dat ik ben pfffffffffff
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 14 januari 2012, 02:28:46 am
citaat:
Geplaatst door ToThePoint

... Kieken dat ik ben pfffffffffff ...

Maar 't kieken heeft het toch opgelost [;)]
Ik ben wel nieuwsgierig naar je filmpje [B)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 januari 2012, 08:02:56 am
Waar zijn we nu mee bezig?  Gisteren een decoder PIC ASM programma geschreven om 16 wissels aan te sturen met servo?s via het ?DCC protocol?. De basis hiervoor was min of meer hetzelfde als wat ik eerder al geschreven heb via ?MM protocol?. Dit weekend hoop ik dit praktisch te testen via MR-direct?

De uitdaging hierin voor mij? weten hoe het DCC protocol werkt.

De volgende uitdaging het mfx protocol?

Geert  
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 14 januari 2012, 10:20:31 am
Enkele links met uitgebreide uitleg voor beginners:

http://www.mstracey.btinternet.co.uk/pictutorial/picmain.htm
http://talkingelectronics.com/html/PIC-Page01.html

Boeken zijn er natuurlijk ook oa de uitstekende serie van Bert Van Dam
http://www.boekinfo.tk/
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 14 januari 2012, 10:24:21 am
Peter, dat ziet er goed uit. Die sites ga ik eens bestuderen om te zien of ik er zo uit kom.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 14 januari 2012, 10:28:44 am
Bij die tweede link heb ik gezien dar er geen knop staat om naar de volgende pagina te gaan (of ik heb er misschien over gekeken [;)]).  Vervang de 01 in de URL door 02 enz en je kan verder.

[Edit] of spiek eens in de map http://talkingelectronics.com/html/ daar staan nog interessante pagina's.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 14 januari 2012, 10:36:15 am
Als je een stukje terugzoekt in die site, dan vind je een index waar je de pagina's direct kan aanklikken.
http://talkingelectronics.com/html/
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 januari 2012, 11:31:18 am
Ook een leerzame site: http://www.gooligum.com.au/tut_baseline.html

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 15 januari 2012, 00:39:11 am
Zo het sein is getest. Ik moet nog wel wat debugging doen, maar in grote lijnen is het in orde.

In het filmke ziet u koploper met enkel een sein in de database (het is me om het weergeven van seinbeelden enkel te doen).
Ik test eerst alle tegenspoorbeelden en zet dan via een cv vanuit de twin center de decoder op normaalspoor. Ja zaag maar een tegenspoorseind dat niet knippert na de ingave van die bewuste cv.
Weer ziet u alle mogenlijke seinbeelden die men in koploper kan instellen.
Een beeld heb ik vervangen.
Dubbel geel + v keeper is geworden dubbel geel + U balk en cijfer.
Dat is speciaal gemaakt voor de baansituatie alhier.

Het filmke vind u HIER (http://"http://www.youtube.com/watch?v=1su3NJlt6sw&feature=youtu.be")
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 15 januari 2012, 09:07:17 am
Knap, JP.
Nu het sein zelf nog eens tonen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 15 januari 2012, 10:34:41 am
citaat:
Geplaatst door Steam.N

Knap, JP.
Nu het sein zelf nog eens tonen [;)]



Geen probleem Jean, maar dat zal in het TSB draadje zijn h? samen met de seinbrug.
De video is genomen gisteren avond na het werk, in het donker. Zo kon ik ook controleren of de leds niet te fel branden. Enkel de leds in de U balk dienen extra weerstand te krijgen.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 17 januari 2012, 13:21:44 pm
Dit is nu wat ik bedoelde met ....Zolang dit draadje ook voor "niet elektronica bouwers" maar verstaanbaar en begrijpbaar blijft. Je kan er maar van leren zeg ik.

Hier zijn al een hoop afkortingen gebezigd. Zou het misschien niet eerst beter zijn om een soort van " verklaren woordenboek" op te stellen( bv via het magazine)met een eventuele korte uitleg, om beginners te informeren. Scheelt al een hoop, in het begrijpen van deze termen.
Alle begin is toch moeilijk ?[:p]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 18 januari 2012, 09:15:26 am
En ja het is gelukt.
De decoder voor 1 sein met v-keeper + u balk + cijfer had u reeds gezien. Deze kan 12 seinbeelden weergeven vanuit koploper en gebruikt daarvoor 4 adressen.
Jammer want de decoder kan er 16 aan, maar koploper stuurt max 12 seinbeelden.

Dezelfde decoder is nu uitgerust om 2 seinen te besturen ook met normaalspoor en tegenspoorbeeld op 6 adressen, het is te zeggen. 3 adressen voor sein 1 en 3 voor sein 2.
Vanuit koploper kan men 8 seinbeelden per sein versturen en ook dit kan de decoder aan.
Ik ben hier vrij zeker van want het decoder gedeelte dat de basis parameter samensteld waaruit de seinbeelden gevormt worden is gedebugt (betekend visueel getest met een extra stuk programma in dat programma)
Debugging of debug wil zeggen een bug zoeken. Bug is het engelse voor (een) fout.
Dus debuggen betekend niets meer dan via een extra stuk programma in het programma kijken of dat programma doet wat het vermoedelijk moet doen. Vermoedelijk want men kan wel denken dat het werkt, maar niets is minder waar.
Waarom een extra stuk programma ?
Wel omdat men niet kan zien wat er gebeurt in een microcontroler. Enkel het eindresultaat is zichtbaar, maar de tussenstappen blijven onzichtbaar.
Een eindresultaat kan enkel het beoogde resultaat geven als alle tussenstappen ook naar behoren functioneren. Maar aangezien die tussenstappen niet zichtbaar zijn moeten die eerst getest worden op het behoorlijk functioneren ervan en dat noemt men DEBUGGEN.
Als ik schrijf dat het "gedebugt"is dan betekend dat de tussenstappen die het uiteindelijke resultaat gaan opleveren getest en naar behoren functioneren.
Wat rest me nu nog ?
Dat wat ik net gedebugt heb daarvan de seinbeelden gieten die door koploper doorgegeven worden en die ik graag op het sein wil weergeven.
Nu het puntje op de i te zetten.
Koploper zend geen beeld door, maar zet een adres op rechtdoor of afbuigen. Of het nu een wissel is of een sein, ze worden op dezelfde manier aangestuurt. Door een combinatie te maken van 3 adressen op rechtdoor of afbuigen kan ik aldus met 3 adressen max 8 seinbeelden weergeven. Met 4 adressen 16. Met 5 adressen 32 beelden, enz...
Bemerk dat het hier de binaire code cq rekenwijze volgt.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 18 januari 2012, 09:29:29 am
Welke afkortingen, Marc? Op deze en vorige pagina zie ik er niet veel [:I]
LED = Light emitting diode [;)]
ASM = assembler, een programmeertaal die "bijna" uit HEX (rechtstreekse computerinstructies) bestaat. Zogeheten hogere talen (C, Basic, ...) worden door een "compiler" in je PC omgezet in HEX
PIC = een familie van ?C (microcontrollers) van het bedrijf Microchip
AVR = een andere familie ?C's, van Atmel

Helpt dit ? [:)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 januari 2012, 07:58:39 am
Zo het programma voor de pic 16f628 is geschreven, getest en werkt uitstekend.
De decoder kan ingesteld worden als: Voor 1 sein met 12 seinbeelden en 4 adressen, 2 seinen met elk 8 seinbeelden met v-keeper, cijfer zonder wit licht op 3 adressen of 4 seinen met 3 seinbeelden op 8 adressen. Zowel normaalspoor als tegenspoor seinbeeld zit erin.
Te programmeren via CV ingave.
Ik kan eindelijk de seinbrug verder afwerken.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 januari 2012, 08:32:05 am
@ToThePoint, een vraagje,

kun jij met deze ?C ook de CV-waarden inlezen in de centrale?, en zo ja hoe doe jij dat? Ik ben daar namelijk ook mee bezig en eventueel ervaring van andere is altijd welkom?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 januari 2012, 12:52:30 pm
citaat:
Geplaatst door Geert

@ToThePoint, een vraagje,

kun jij met deze ?C ook de CV-waarden inlezen in de centrale?, en zo ja hoe doe jij dat? Ik ben daar namelijk ook mee bezig en eventueel ervaring van andere is altijd welkom?

Geert




Ja dat kan ik.
Ook wegschrijven ervan is geen probleem.
Ik begrijp uw vraag niet.
Is het een soft of een hardware probleem ?
Hardware is dmv een uitgang die als dusdanig in de soft geconfigureert is en die via een weerstand een optocoupler stuurt. Die is aangesloten over een brugcel dat op het programmeerspoor komt en met een weerstand van 100 ohm in serie.
Brugcel over programmeerspoor, in serie weerstand en uitgang opto die aan de diodezijde aangestuurt wordt door de controler.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 januari 2012, 12:57:54 pm
En een test van het eerste sein op de baan. Vandaag werd ook mijn eerste class 66 loc bezorgt. Beide even getest.
kijken naar de test ? (http://"http://youtu.be/86f_Ds1Adw8")
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 januari 2012, 12:59:40 pm
Bedankt,
vooral het hardware gedeelte interesseert me.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 januari 2012, 15:58:22 pm
wat de opto eigenlijk doet is de brugcel nagenoeg kortsluiten. de weerstand in serie met de opto beperkt de stroom door de opto.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 januari 2012, 20:42:45 pm
citaat:
Geplaatst door ToThePoint

wat de opto eigenlijk doet is de brugcel nagenoeg kortsluiten. de weerstand in serie met de opto beperkt de stroom door de opto.



Deze methode is al meermaals gebruikt. Je komt deze wel eens meer tegen op het internet. Het zal dan wel de beste methode zijn zeker? Ik zal het ook zo vermoedelijk gaan doen. Ik ga wel proberen hetzelfde ?C-pin te gebruiken om het digitaal signaal van de centrale enerzijds te decoderen en anderzijds pulsen terug te sturen naar de centrale.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: TimT op 20 januari 2012, 22:41:33 pm
Mooi gedaan :D en alles werkt mooi zo te zien :D
werk dit enkel via koploper of ook via een dcc compatible centrale
Eindelijk een  decoder (buiten de oc32 die kan ze ook correct aansturen)
die ze correct kan ondersteunen wat zijn je verder plannen met dit project ? [:D]

Groeten Tim
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 21 januari 2012, 01:18:21 am
citaat:
Geplaatst door TimT

Mooi gedaan :D en alles werkt mooi zo te zien :D
werk dit enkel via koploper of ook via een dcc compatible centrale
Eindelijk een  decoder (buiten de oc32 die kan ze ook correct aansturen)
die ze correct kan ondersteunen wat zijn je verder plannen met dit project ? [:D]

Groeten Tim



Tim

Koploper stuurt dat toch via DCC, allee ja ik ben weer verward.
2de poging.
In koploper dient men de adressen en hoe die adressen geplaatst dienen te worden om de seinbeelden weer te geven, in te geven.
Koploper stuurt de commando's via loconet ( bij mij althans).
De twin center zet die signalen om naar DCC en krijgt de commando's via loconet. Een seriele kabel tussen TC en PC is totaal niet betrouwbaar.
Wel dient men in de TC de virtuele adressen in te geven en daar heb ik deze voormiddag serieus mee aan het knoeien geweest PFFFFFFFFFFFF.
Soit om een lang verhaal kort te maken.
Het maakt niet uit vanwaar die commando's komen.
De seinbeelden kunnen zelfs met een profi boss gedaan worden.
Het filmke is daar een bewijs van. Ik plaats het seinbeeld met de profi boss.
Bemerk ook dat het seinbeeld pas na 1 sec op het sein verschijnt na ingave van het laatste commando. Ik deed dat omdat koploper 4 adressen na elkaar zet en daar gaat de nodige tijd over.
Ik wou niet dat vooraleer een beeld totaal was doorgegeven dat het sein al vanalles anders liet zien. Ik weet niet of het bij het grootbedrijf wel zo ia, maar ik veronderstel dat veranderende seinbeelden niet via via gaan, maar ineens op het sein verschijnen.
In de decoder kunnen 16 verschillende seinbeelden als men de decoder gebruikt voor 1 sein die 8 leds aanstuurt. Zoals het sein in het filmke, maar koploper kan max 12 seinbeelden aan en aangezien koploper niet verder ontwikkeld word heeft het weinig avance.

Kheb mijn persoonlijke geheugensteun op de site gezet. Dan kan je eens kijken wat er mogenlijk is. HIER (http://"http://www.all-that-is.eu/config%20seinen.txt"). En ik benadruk dat dit een persoonlijk document is. Het dient enkel voor mij als referentie.

Ik heb geen verdere plannen met dit project. Voor mij is het klaar en word a gogo aangepast.
Indien er iemand is die interesse heeft die kan ten persoonlijke titel een HEX file krijgen.
Ik wil zelfs nog 4 seinbeelden extra in de 1 sein optie stoppen.
of de 2 sein met 6 leds uitbreiden qua seinbeelden (als dat gaat tenminste. Er is nog 1 adres over, maar de decoder kan slechts 6 leds aansturen.
Maar publiek ga ik geen HEX plaatsen, en al helemaal geen asm file. Te veel zakkenvullers en het patent debacle ten spijt.
Ook is het een optie dat u met een zakje pic 16f628a komt en ik die programmeer. Een pic is binnen de 15 seconden klaar.
Dus moest er iemand interesse hebben, de pic's worden kostenloos geprogrammeert. Een electronische schakeling dien je dan nog wel te bouwen. Ik schat dat u met een euro of 7 wel klaar bent.
Maar ik weet niet wat de prijs van een 16f628 is vandaag de dag. Ik kocht ongeveer 50 stuks een jaar of 2 geleden.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dgrr57 op 21 januari 2012, 01:42:23 am
Ik ben, hoe kan ik dat zeggen, een beetje teleurgesteld [:(]
Ik dacht dat we hier samen iets gingen maken. We zien maar alleen een blackbox waar we de inhoud nooit zullen zien. Daar ben ik weinig mee [:(]
Sorry als je mij niet versta.

Ik heb een site (http://"http://www.ptitrain.com/indexiframe.php?page=www.ptitrain.com/electronique/microp/page01/index.htm") gevonden (in het Frans) waar men vanaf het begin begint [:)] en ik zal daarmee leren werken met pic's.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 21 januari 2012, 02:01:13 am
citaat:
Geplaatst door dgrr57

Ik ben, hoe kan ik dat zeggen, een beetje teleurgesteld [:(]
Ik dacht dat we hier samen iets gingen maken. We zien maar alleen een blackbox waar we de inhoud nooit zullen zien. Daar ben ik weinig mee [:(]
Sorry als je mij niet versta.

Ik heb een site (http://"http://www.ptitrain.com/indexiframe.php?page=www.ptitrain.com/electronique/microp/page01/index.htm") gevonden (in het Frans) waar men vanaf het begin begint [:)] en ik zal daarmee leren werken met pic's.



Uiteraard Patrick, dat is geen probleem. Gooi een project in de groep dat je graag wil bouwen.
Ook dien je te weten met welk type controler je gaat werken.
Dan kunnen we samen stapsgewijs uw project uitwerken.
Ik heb blijkbaar niet gelezen en/of begrepen dat Patrick met pic's leert werken. Sorry daarvoor Patrick
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 21 januari 2012, 10:56:21 am
Spijtig dat je de ASM code niet vrijgeeft. Wel gratis koploper gebruiken, maar je eigen ontwikkelde projecten afschermen [:(]

In ieder geval ik ben daar ook mee bezig om seinen aan te sturen. (this te zeggen het staat al in grote lijnen al op papier) Eerst de programmering en terugmelding van CV?s in orde krijgen.  Mijn bron codes zijn altijd te vinden op mijn webpagina?s.  Ik plaats ook heel veel uitleg bij de bron code. Dit is vooral voor mezelf bedoeld. Na een paar jaar weet je niet meer zogoed welke denkpiste je toen gebruikte.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 21 januari 2012, 11:03:44 am
TTP, ik ben eigenlijk ook wel teleurgesteld. Je hebt dit topic zelf geopend met de bedoeling om kennis over microcontrollers te delen. Maar als puntje bij paaltje komt geef je helemaal geen feitelijke informatie.

Ik had de verwachting hier iets te leren, maar dat lukt op deze manier natuurlijk niet.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 21 januari 2012, 11:30:45 am
Ik kan JP (TTP) deels volgen.

Een programma in elkaar zetten doe je tegenwoordig niet meer door 'warm water' uit te vinden (ik toch niet).  Je zoekt (en vindt!) overal source code voor oplossing van deelproblemen van je ontwerp.  Je gooit die deeloplossingen samen en je hebt een oplossing voor jou probleem.

Waarom die code niet vrijgeven?  Daar wringt het schoentje: een groot deel de code is intellectuele eigendom van anderen (ook al gebruik je er maar een stukje van) en op de gepubliceerde code staat duidelijk een copyright vermeld.

Je kan dat natuurlijk omzeilen door variabelen een andere naam te geven en het commentaar volledig naar je eigen mond aan te passen, maar dan kan je evengoed het programma zelf schrijven.  Een algorithme uitwerken kan op verschillende manieren, maar grosso-modo komt iedere programmeur toch met dezelfde oplossing.

Je kan ook vermelden in je commentaar waar je dat stukje van een ander voor gebruikt en waar je het gevonden hebt.  Met een auteursvermelding maak je volgens mij dan geen inbreuk op het copyright?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 21 januari 2012, 12:00:19 pm
Als bron voor decoders (zowel MM als DCC) voor PIC's kan ik alleen maar volgende site aanbevelen:

http://www.digital-bahn.de/develop/source.htm

Alle source is vrijgegeven en vrij omvangrijk voorzien van commentaar (Duits).
De decoders hebben bijna allemaal een 'adres-leer' functie en zijn via de HEX files (en software via de site te downloaden) aan te passen aan je eigen behoefte.

Ik gebruik die decoders maar heb er een optocoupler voor gezet om mijn baansignaal galvanisch te scheiden van mijn stuurspanningen.
Ik ben bezig (met dit en nog veel andere zaken...) om printjes te ontwerpen om die decoders met 'normale' componenten uit te voeren (ik haat SMD's).
De componenten zijn vrij goedkoop en eenvoudig aan te geraken.

Zoals JP beschik ik ook over een PIC programmer en wil ook ten dienste staan van zij die er geen hebben om eens een HEX in een PIC te 'bakken'.
Ik vraag er ook geen kosten voor, alleen een postzegel om de PIC te retourneren.

[Edit] Door nog wat rond te neuzen op de site heb ik nu pas gezien dat de schema's in Eagle formaat ook te downloaden zijn...
...Ik heb er zelf heel wat tijd ingestoken om ze te hertekenen [:(]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 21 januari 2012, 23:14:32 pm
citaat:
Geplaatst door Geert
Spijtig dat je de ASM code niet vrijgeeft. Wel gratis koploper gebruiken, maar je eigen ontwikkelde projecten afschermen [:(]
In ieder geval ik ben daar ook mee bezig om seinen aan te sturen. (this te zeggen het staat al in grote lijnen al op papier) Eerst de programmering en terugmelding van CV?s in orde krijgen.  Mijn bron codes zijn altijd te vinden op mijn webpagina?s.  Ik plaats ook heel veel uitleg bij de bron code. Dit is vooral voor mezelf bedoeld. Na een paar jaar weet je niet meer zogoed welke denkpiste je toen gebruikte.
Geert met alle respect, maar zo zie ik het niet.
Een paar maanden geleden had ik een lumieus idee. (...) In een draadje dat hier op het forum staat kan men perfect zien wat er toen allemaal gebeurt is. (...)
Daarom wens ik te weten wie de hex cq asm krijgt want zij die aan de grond liggen van het " PATENT DEBACLE " hoeven van mij geen hulp te verwachten. Dus voor diegene die interesse hebben in de seindecoder met belgische seinbeelden die kan gratis bij mij het nodige bekomen. Wat ook impliceert dat u de ASM zelfs uitgeprint meekrijgt ! (...)
Maar vandaag heb ik tijdens het werk een tekortkoming erin gevonden.
Als de decoder 2 seinen bedient met 6 leds dan is het voor beide oftewel normaalspoor of tegenspoorbeeld. Ik zou graag hebben dat beide onafhankelijk ingesteld kunnen worden. Dus ik zal nog eens moeten graven in de ASM file en een extra cv'ken moeten gebruiken ervoor.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2012, 09:05:42 am
Ik heb even wat gesnoeid in dit draadje.
Vanuit het verleden borrelde er blijkbaar wat rancune op, die NIETS met dit onderwerp te maken heeft [V]
Laten we teruggaan tot de essentie van dit draadje: hoe kan je een microcontroller gebruiken in onze hobby.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 22 januari 2012, 10:34:06 am
citaat:
Geplaatst door PeterC

Als bron voor decoders (zowel MM als DCC) voor PIC's kan ik alleen maar volgende site aanbevelen:

http://www.digital-bahn.de/develop/source.htm

Alle source is vrijgegeven en vrij omvangrijk voorzien van commentaar (Duits).
De decoders hebben bijna allemaal een 'adres-leer' functie en zijn via de HEX files (en software via de site te downloaden) aan te passen aan je eigen behoefte.

Ik gebruik die decoders maar heb er een optocoupler voor gezet om mijn baansignaal galvanisch te scheiden van mijn stuurspanningen.
Ik ben bezig (met dit en nog veel andere zaken...) om printjes te ontwerpen om die decoders met 'normale' componenten uit te voeren (ik haat SMD's).
De componenten zijn vrij goedkoop en eenvoudig aan te geraken.

Zoals JP beschik ik ook over een PIC programmer en wil ook ten dienste staan van zij die er geen hebben om eens een HEX in een PIC te 'bakken'.
Ik vraag er ook geen kosten voor, alleen een postzegel om de PIC te retourneren.

[Edit] Door nog wat rond te neuzen op de site heb ik nu pas gezien dat de schema's in Eagle formaat ook te downloaden zijn...
...Ik heb er zelf heel wat tijd ingestoken om ze te hertekenen [:(]




Peter, Dean Probst schreef ooit een decoder sequence voor het DCC signaal dat in assembler is en bedoelt voor een PIC.
Misschien uw licht eens dare oplichten.
Galvanische scheiding is mijns inziens een must voor alle gerelateerde zaken die spoorspanning inhouden.
Ook ik gebruik het liefst gewone componenten. SMD's als het echt niet anders kan.

P.s. Ik heb blijkbaar niet gelezen en/of begrepen dat Patrick met pic's leert werken. Sorry daarvoor Patrick en de post van gisteren is aangepast..
We zullen de draad opnemen als u een basis heeft.
Dwz, Het initialiseren en gebruiksklaar maken van een pic.
Het eigenlijke programma wordt hier a gogo samen uitgewerkt.
Maar ik stel voor om simpel te beginnen met een project dat bruikbaar is op een modelbaan. En waarvan we kunnen zeggen "Dat hebben we samen gemaakt".

Wat me doet denken aan devolgende site. Die van de MERG. die staat vol met ASM files en HEX voor diegene die wensen te weten wie, wat waar en hoe.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2012, 13:33:02 pm
Ik heb een wat algemene vraag voor mensen die al eens met een ?C gepuzzeld hebben:
Gebruiken jullie interrupts of niet?

Even verduidelijken: een interrupt is een stukje programma, dat opgeroepen wordt als er "iets" gebeurd. Op dat moment wordt het lopende programma onderbroken, wordt de routine afgewerkt en gaat de rest van het programma daarna gewoon door.
Een aanleiding voor een interrupt kan vanuit een interne timer, een toetsaanslag of andere externe gebeurtenis, stroomverlies, ...

Ik heb er wat mee zitten puzzelen, maar gebruik tot nu toe toch liever een (ouderwetse?) hoofdlus, en vraag in die lus zelf wel op of er iets is (poorten checken, tellers nakijken, ...)

... Maar ik wou graag jullie meningen/ervaringen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 januari 2012, 13:50:16 pm
Interrupts?  Waarom?  Waarom niet?

Ik gebruik ze voor tijdcritische delen van een programma.  Wanneer iets op het juiste moment moet gebeuren (soms kwestie van microseconden...).

Interrupts zijn voor vele mensen een heel moeilijke materie en er gebeuren ook veel fouten mee.

Een eenvoudige uitleg voor een interrupt (en hoe die goed af te handelen!) - heel simplistisch:

Ik bak patatjes.  Patatje per patatje omkeren en laten bakken (hoofdroutine - main loop).  De bel gaat! Interrupt!  Ik ga naar de voordeur en ontvang de post.  Ik keer terug naar mijn fornuis (RETI - return from interrupt) en het is om zeep!  Mijn patatjes zijn ondertussen aangebrand (data is corrupt).  Mijn programma draait verkeerd!

Oplossing:
Ik bak patatjes (main loop).  De bel (interrupt)!  Voor ik naar de voordeur ga, zet ik mijn pan van het vuur (belangrijke data opslaan - saven van registers).  Ik ga naar de deur en ontvang de post.  Terug naar de keuken (RETI) en zet mijn pan met niet aangebrande patatjes terug op het vuur (restore van mijn data) en bak rustig verder tot ze klaar zijn (end main-loop) of tot de volgende interrupt.
[^][^][^]

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 22 januari 2012, 14:03:23 pm
citaat:
Geplaatst door PeterC

Interrupts?  Waarom?  Waarom niet?

Ik gebruik ze voor tijdcritische delen van een programma.  Wanneer iets op het juiste moment moet gebeuren (soms kwestie van microseconden...).

Interrupts zijn voor vele mensen een heel moeilijke materie en er gebeuren ook veel fouten mee.

Een eenvoudige uitleg voor een interrupt (en hoe die goed af te handelen!) - heel simplistisch:

Ik bak patatjes.  Patatje per patatje omkeren en laten bakken (hoofdroutine - main loop).  De bel gaat! Interrupt!  Ik ga naar de voordeur en ontvang de post.  Ik keer terug naar mijn fornuis (RETI - return from interrupt) en het is om zeep!  Mijn patatjes zijn ondertussen aangebrand (data is corrupt).  Mijn programma draait verkeerd!

Oplossing:
Ik bak patatjes (main loop).  De bel (interrupt)!  Voor ik naar de voordeur ga, zet ik mijn pan van het vuur (belangrijke data opslaan - saven van registers).  Ik ga naar de deur en ontvang de post.  Terug naar de keuken (RETI) en zet mijn pan met niet aangebrande patatjes terug op het vuur (restore van mijn data) en bak rustig verder tot ze klaar zijn (end main-loop) of tot de volgende interrupt.
[^][^][^]





Dat is nu eens klaar en duidelijk uitgelegd seh. Zo heb ik het graag.
Het is begrijpbaar voor elke levens en zijnsvorm.

Heb daar zelf niets aan toe te voegen, enkel dat voor de seindecoder ik een teller als een soort interrupt gebruikt heb.
Het hoofdprogramma loopt, maar kijkt eerst of het normaalbeeld is of op knipper moet. Is dat het geval dan maakt het programma een sprong.
De verstuurde data vanuit DCC word in registers opgeslagen, die registers worden gecopieerd en met die copie worden de seinbeelden gezet. Pas als er nieuwe data is en de timer (teller) aangeeft dat het tijd is om het beeld te plaatsen dan pas word het uiteindelijke resultaat getoont.
Hoofdlus is het kijken naar neiuwe instructie's van buitenaf en dat word enkel kortstondig onderbroken. Maar gebeurt niet met de instructie alsdusdanig maar met een GOTO in beide programma stukken.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2012, 14:34:38 pm
citaat:
Geplaatst door PeterC
Ik bak patatjes.  Patatje per patatje omkeren en laten bakken (hoofdroutine - main loop).  De bel gaat! Interrupt!  Ik ga naar de voordeur en ontvang de post.  Ik keer terug naar mijn fornuis (RETI - return from interrupt)
Maar je kan toch ook in je hoofdlus "af en toe" luisteren naar de bel en dan een routine starten - of even onthouden dat je zo dadelijk naar de voordeur gaat? Wat is het voordeel?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 januari 2012, 14:50:35 pm
citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door PeterC
Ik bak patatjes.  Patatje per patatje omkeren en laten bakken (hoofdroutine - main loop).  De bel gaat! Interrupt!  Ik ga naar de voordeur en ontvang de post.  Ik keer terug naar mijn fornuis (RETI - return from interrupt)
Maar je kan toch ook in je hoofdlus "af en toe" luisteren naar de bel en dan een routine starten - of even onthouden dat je zo dadelijk naar de voordeur gaat? Wat is het voordeel?



Om het interrupt-verhaal verder te zetten: die bel!  Dat is de interrupt!

Ik kan het ook als volgt vertellen om in Gerolf's verhaal te komen:

Patatjes bakken, pan even van het vuur, naar de voordeur gaan en kijken.  De postbode is er nog niet.  Terug naar het fornuis, patatjes bakken.  Als ieder patatje gekeerd is (vast punt in de routine) terug patatjes van het vuur, terug naar de voordeur,...

Verschil: met een interrupt verlies ik veel minder tijd.  Moeder gaat niet zagen dat de patatjes nog niet klaar zijn en dat ik blijf aperitieven [^] want ik ga enkel naar de voordeur als de postbode er daadwerkelijk is; de kans bestaat ook dat hij in het geheel niet komt terwijl ik aan het bakken ben en dan heeft moeder veel te lang op haar honger gezeten terwijl dit niet nodig was... [;)]


Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 januari 2012, 22:32:41 pm
citaat:
Geplaatst door Gerolf

Ik heb een wat algemene vraag voor mensen die al eens met een ?C gepuzzeld hebben:
Gebruiken jullie interrupts of niet?




Nu vraag je wel iets over een onderwerp dat meestal veel later aan bod komt als je met ?C begint. Zoals hiervoor al aangehaald, interrupts gebruik je heel vaak in tijdskritische situaties.  Maar als je het slim aanpak,  vereenvoudigd dit ook je programmeerwerk.  Zeker als je werkt met meerdere bronnen van interrupts.

Geert



Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: mini-bs op 23 januari 2012, 13:38:10 pm
wanneer pic's als DCC-decoder gebruikt worden blijken ze ook met interrupts te werken. DCC (en waarschijnlijk ook de Motorola-familie) zit immers in een vast periodestramien dat toelaat om 1'n en 0'n van elkaar te onderscheiden.
Een techniek die blijkbaar gebruikt wordt is om bij een opgaande flank van de blokgolf een sequentie te starten en 87 microsecs later via een interrupt een meting te doen op het signaal. Is dat signaal op dat moment nog hoog dan wordt een 0 gemeten, is het signaal dan alweer laag dan hebben we een 1 te pakken.


(http://bahn-in-haan.de/images/decoder/dccdecoding.jpg)
bron= bahn-in-haan.de (http://"http://bahn-in-haan.de")

Het zou allicht interessant kunnen zijn om de werking en programmering van pic's als decodertje in een ander draadje te behandelen want hier zou het wat te ver leiden van het eigenlijke onderwerp, nl programmeren van PIC's in het algemeen, maar ik meld het toch even als voorbeeld.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 januari 2012, 13:55:18 pm
citaat:
Geplaatst door mini-bs

wanneer pic's als DCC-decoder gebruikt worden blijken ze ook met interrupts te werken. DCC (en waarschijnlijk ook de Motorola-familie) zit immers in een vast periodestramien dat toelaat om 1'n en 0'n van elkaar te onderscheiden.
Een techniek die blijkbaar gebruikt wordt is om bij een opgaande flank van de blokgolf een sequentie te starten en 87 microsecs later via een interrupt een meting te doen op het signaal. Is dat signaal op dat moment nog hoog dan wordt een 0 gemeten, is het signaal dan alweer laag dan hebben we een 1 te pakken.




Deze techniek wordt algemeen gebruikt. Bij MM protocol is het wel zo dat een lange puls een 1 is en een korte puls een 0.

Bij Mfx is deze techniek niet zo bruikbaar. Elke bit begint bij een ompoling van het digitale signaal. Dit kan van min naar plus zijn of andersom. Het belangrijkste is hetgeen de volgende 100?s gebeurd. Indien na 50?s er terug een ompoling is van het digitale signaal, dan is het bit een logische '1' (inclusief de resterende 50?s om zo tot 100?s te komen).  Gebeurd dat pas na 100?s, dan is het bit een logische '0' .

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 23 januari 2012, 14:38:14 pm
citaat:
Geplaatst door Geert

Bij MM protocol is het wel zo dat een lange puls een 1 is en een korte puls een 0.
Iets precieser: twee lange pulsen vormen een 1, twee korte pulsen een 0, en een lange en een korte achter elkaar een z.g. indifferent of open bit. In de nieuwe versie van MM kennen we nog een vierde toestand, gevormd door eerst een korte en dan een lange puls.

Let wel dat het MM protocol polariteitsgevoelig is. Als je het verkeerdom aansluit zal er iets heel anders uit komen. De moderne decoders weten dat wel weer "rechtop" te zetten, maar de decodering wordt dan wel een pak ingewikkelder.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 januari 2012, 14:49:51 pm
Ik beschouw het MM protocol als een zuivere binaire code waar de data paar-gewijs (per twee) gecodeerd wordt. Als je blijft denken in trinaire data dan blijft het ingewikkeld...

Het MM protocol is polariteitsgevoelig, maar bij 3 rail kan dit nooit een probleem zijn. Je decodeerd altijd het signaal van de sleper t.o.v. de wielen (massa)

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 23 januari 2012, 15:05:50 pm
Als je MM beschouwt als binair, dan moet je toch het oorspronkelijke idee van Motorola vertalen? Of zie ik het nu te somber?

Op 3-rail is MM inderdaad geen probleem, zolang je de draadjes correct aansluit. Maar er zijn ook 2-railers die MM gebruiken. En daarvoor zijn die decoders bedacht die het signaal uit zichzelf terug omkeren als ze zien dat het "ondersteboven" staat.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 januari 2012, 15:14:50 pm
citaat:
Geplaatst door Klaas Zondervan

Op 3-rail is MM inderdaad geen probleem, zolang je de draadjes correct aansluit. Maar er zijn ook 2-railers die MM gebruiken. En daarvoor zijn die decoders bedacht die het signaal uit zichzelf terug omkeren als ze zien dat het "ondersteboven" staat.



Kijk naar de lange pauze na de twee bijeenhorende pulstreinen: als die 0 is, zit je goed, is die 1, dan staat je signaal 'ondersteboven'.
Het principe van die (om)poling wordt door Sven Brandt (http://www.digital-bahn.de) uitvoerig beschreven.
Als je voor een decoder een optocoupler zet, inverteer je het signaal ook.  Als de software in de decoder daar niet op ontworpen is, doet de decoder niets.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 januari 2012, 15:24:29 pm
Iets anders nu:

Ooit eens een keerlusmodul program geschreven in en 14 pins PIC ?C nl. 16F684. Het principe is gelijkaardig aan de conventionele keelusmodules die werken met spanningsval over diodes. Echter deze spanningsval stuurt geen opto couplers aan, maar wordt gemeten door een PIC ?C.  De spanningsval over een GE-diode van 0,3V is ruim voldoende.
De truc hierbij is dat de ?C enkel positieve spanningen kan meten. Vandaar dat deze ook het digitale signaal moet inlezen. (niet decoderen) Enkel bij positieve pulsen een A/D-Conversie uitvoeren.  

Dit programma is getest op MPLAB simulator. Ik heb wel ??n groot probleem. Ik kan deze ,voorlopig althans, niet praktisch uittesten op een 2 rail systeem .[:(] --> ik ben een 3 railer

(http://users.telenet.be/RedDeBist/MBAAN/keerlusschakeling met PIC microcontroller.png)

voor de duideljkheid, alles in dat blauwe kader zit in de ?C...

update: duidelijkere tekening geplaatst

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 23 januari 2012, 16:22:50 pm
citaat:
Geplaatst door Geert

Ik kan deze ,voorlopig althans, niet praktisch uittesten op een 2 rail systeem .[:(] --> ik ben een 3 railer
Wel opmerkelijk dat je dan toch de moeite neemt om zoiets te ontwerpen.[:)]
Om het te testen heb je overigens niet zo veel nodig. Een metertje recht spoor (kan je desnoods maken van c-rail of K-rail) en een wagentje dat stroom afneemt.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 januari 2012, 16:38:26 pm
Dit draadje: http://www.modelspoormagazine.be/newforum/topic.asp?TOPIC_ID=12756&whichpage=1 was de aanleiding ertoe[;)]

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 23 januari 2012, 22:37:43 pm
@Gerolf en andere:

Het grote verschil tussen een interrupt en polling (regelmatig naar een ingang gaan kijken). Is dat een externe interrupt bijna altijd flank gestuurd is (d.w.z. bij een overgang van 0 naar 1 of andersom) en niet niveau gestuurd ('0' of '1').

Bij polling zie je enkel of een bepaalde ingang hoog of laag is maar je weet niet hoelang dat al zo is. Zeer snelle variaties in een ingangssignaal kunnen zo ook verloren gaan doordat je ze gewoon gemist hebt in je polling lus.[B)]

Dan zijn er ook nog de interne interrupts, die kunnen je bv verwittigen dat er data is toegekomen in de USART (voor RS-232 bv) of wanneer een interne teller overgelopen is of .....

Bij DCC-decodering bv. ga je het DCC signaal aansluiten op een externe interrupt ingang. Bij een dalende flank ga je meteen een interne teller laten tellen (hij meet als het ware de tijd die verstrijkt) na bv. 80?s is deze teller teneinde en genereert ook hij een interrupt. Nu kijk je onmiddellijk naar de ingang met het DCC signaal als de ingang '1' is was er een '1' verstuurd en als hij '0' is was er een '0' verstuurd. zie ook http://nl.wikipedia.org/wiki/Digital_Command_Control
Zonder interrupts is dit niet haalbaar. Tussen de interrupts door kan de ?controller dan rustig de bits verwerken.[;)]

Ik hoop dat het een beetje duidelijk was anders probeer ik het graag nog eens op een andere manier, want ook mijn leerlingen hebben het vaak moeilijk met dit onderdeel.

Grts, Harald
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 januari 2012, 22:44:59 pm
citaat:
Geplaatst door Dreha

...Ik hoop dat het een beetje duidelijk was anders probeer ik het graag nog eens op een andere manier, want ook mijn leerlingen hebben het vaak moeilijk met dit onderdeel.



En niet alleen je leerlingen...  Trial and error, vallen en opstaan daarmee...   ...vandaar ook mijn 'simplistsche uitleg' van de 'patatjes bakken'.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 24 januari 2012, 09:08:15 am
citaat:
Geplaatst door Dreha

@Gerolf en andere:

Het grote verschil tussen een interrupt en polling (regelmatig naar een ingang gaan kijken). Is dat een externe interrupt bijna altijd flank gestuurd is (d.w.z. bij een overgang van 0 naar 1 of andersom) en niet niveau gestuurd ('0' of '1').

Bij polling zie je enkel of een bepaalde ingang hoog of laag is maar je weet niet hoelang dat al zo is. Zeer snelle variaties in een ingangssignaal kunnen zo ook verloren gaan doordat je ze gewoon gemist hebt in je polling lus.[B)]

Dan zijn er ook nog de interne interrupts, die kunnen je bv verwittigen dat er data is toegekomen in de USART (voor RS-232 bv) of wanneer een interne teller overgelopen is of .....

Bij DCC-decodering bv. ga je het DCC signaal aansluiten op een externe interrupt ingang. Bij een dalende flank ga je meteen een interne teller laten tellen (hij meet als het ware de tijd die verstrijkt) na bv. 80?s is deze teller teneinde en genereert ook hij een interrupt. Nu kijk je onmiddellijk naar de ingang met het DCC signaal als de ingang '1' is was er een '1' verstuurd en als hij '0' is was er een '0' verstuurd. zie ook http://nl.wikipedia.org/wiki/Digital_Command_Control
Zonder interrupts is dit niet haalbaar. Tussen de interrupts door kan de ?controller dan rustig de bits verwerken.[;)]

Ik hoop dat het een beetje duidelijk was anders probeer ik het graag nog eens op een andere manier, want ook mijn leerlingen hebben het vaak moeilijk met dit onderdeel.

Grts, Harald



Is klaar en duidelijk Harald.
Zo heb ik dus ook de decoder sequentie gamaakt.
Het knipperen van de leds bij tegenspoorbeeld is bijzaak en niet tijd kritisch. Het ontvangen van het dcc signaal en het samenstellen van de gedecodeerd informatie in de registers is wat ten alle tijde op de eerste plaats komt. Het samenstellen van de seinbeelden vanuit die registers is bijzaak (uiteraard wel het uiteindelijke doel) en gebeurt in afwachting van nieuwe informatie. Of het seinbeeld nu in een fractie van een seconde geplaatst is of na een seconde is niet aan de orde. Beter na een seconde, dan heeft koploper alle tijd om op de 4 adressen de nodige informatie te versturen.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 februari 2012, 21:31:18 pm
Omdat de ene servo de andere niet is en ik graag weet bij welke pulslengte ze wat doen, heb ik een oud projectje van onder het stof gehaald: een servotester/calibratie - gebaseerd op een PIC 16F877.  De gekozen processor was wat overkill voor dergelijk projectje (destijds had ik geen andere voorhanden) en nu wil ik terug een servotestertje opbouwen (opnieuw vanaf nul) maar deze keer met een iets meer bescheiden processor: een PIC 16F684 (14 pens - 8 bits - spotgoedkoop).

Omdat ik nu voor de eerste keer volledig (en uitsluitend) gebruik maak van de (open-source) JAL-bibliotheken en ik mezelf ook terug wat moet inwerken, wil ik jullie wel over de schouder laten meekijken met mijn vorderingen (en valkuilen).

Het eerste deel van het project is heel simpel: op een 16F684 heb ik via een voorschakelweerstand (470 ohm, te groot, maar lag toevallig binnen handbereik) een ledje op een als uitgang geconfigureerde poort gezet en laat die ??n seconde aan en daarna ??n seconde uit.  de 'loop' wordt herhaald tot...  ...de spanning eraf gehaald wordt.

Zoals bij al mijn 'experimenten' is de schakeling op een breadboard opgebouwd:

(http://www.pctoytoy.be/2012/20120206.jpg)

Het is het schakelingetje links onderaan (rechts bovenaan staat een 18F2550 met daarin een USB-I2C omzetter die voor 99% naar mijn zinnen werkt, maar die code is een ander paar mouwen - bij 100% plaats ik het schema en de code op mijn site).

Bij interesse wil ik wel laten zien hoe ik van een eenvoudige knipperlichtschakeling naar een servotester kom (met uitlezing op een 16 karakter alfa-numeriek LCD display).

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_1.htm")

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 06 februari 2012, 22:56:56 pm
OK, Peter, ik zit klaar voor het scherm.
Laat maar komen !  Volop aandacht en interesse [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dgrr57 op 07 februari 2012, 00:48:30 am
Ik volg [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 07 februari 2012, 00:52:45 am
Hier eveneens gekluisterd.
Als ik weer een lange tijd niets doe met de microcontrolers (want het seinproject is klaar) dan kan dergelijke info steeds als opfrisser dienen.
Een geoefende zal er wel sneller mee weg zijn als een leek, maar de info is nooit verloren moeite.
Ben eens benieuwd hoe u de timer sequentie gaat instellen en de eventuele delers.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 februari 2012, 10:40:16 am
Wordt zeker gevolgd. Vooral uw ervaringen met de 18F2550 en de toepassing USB-I2C omzetter interesseert me. [:p] Zelf staat dit nog in mijn to do lijstje?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 07 februari 2012, 11:07:15 am
citaat:
Geplaatst door ToThePoint

citaat:
Geplaatst door dgrr57

Ik ben, hoe kan ik dat zeggen, een beetje teleurgesteld [:(]
Ik dacht dat we hier samen iets gingen maken. We zien maar alleen een blackbox waar we de inhoud nooit zullen zien. Daar ben ik weinig mee [:(]
Sorry als je mij niet versta.

Ik heb een site (http://"http://www.ptitrain.com/indexiframe.php?page=www.ptitrain.com/electronique/microp/page01/index.htm") gevonden (in het Frans) waar men vanaf het begin begint [:)] en ik zal daarmee leren werken met pic's.



Uiteraard Patrick, dat is geen probleem. Gooi een project in de groep dat je graag wil bouwen
Ook dien je te weten met welk type controler je gaat werken.
Dan kunnen we samen stapsgewijs uw project uitwerken.
Ik heb blijkbaar niet gelezen en/of begrepen dat Patrick met pic's leert werken. Sorry daarvoor Patrick


---------------------------------------------------------------------

Uiteraard Patrick, dat is geen probleem. Gooi een project in de groep dat je graag wil bouwen.
Hier gaan we. En bovendien een oud zeer
 
Beschrijving

Een ondergronds schaduwstation. Bestaande uit: 6 opstelsporen en ??n doorloopspoor. daarachter een keerlus.
1) Het doorloopspoor mag "nooit" als opstelspoor dienen m.a.w het dient voor doorgaand verkeer.
2) er wordt gereden met goederen en passagierstreinen waaronder  1 sneltrein.( nationaal)
3) Tussendoor is er nog een trein komende van de cementfabriek( apart rangeerterrein) die afgewerkte producten en grondstoffen moet aan en uitleveren aan de klanten.
4) Er staat een ongevallentrein op stelspoor 6 en die moet nu en dan ook eens uitrukken.
het doel van het schaduwstation:

 Een trein ( goederen) komende vanuit richting B naar A moet een vrijliggend opstelspoor kiezen. Let wel de wissel staat "niet" in de juiste stand.Zet de wissel juist rijd binnen en stopt op het einde voor de wissel die verkeerd staat.Zet de wissel juist , vertrekt rijd de keerlus binnen en komt "op hetzelfde spoor "binnen. De inrij wissel staat juist. Stopt voor de uitrij wissel. Dus nu van A naar B.
Dan vertrekt er een passagierstrein zet de uitrij wissel juist. Rijd op de bovenliggende baan zijn rondje ( nu ja rondje) en stopt voor het rode uitrij sein in het station.
Op dat ogenblik raast de internationale trein door het station helemaal de baan over naar het beginpunt zijnde zijn opstelspoor 2 Waar hij dezelfde procedures doorloopt als de andere treinen ( wachten op zijn beurt)
De goederentrein in het schaduw station zet de wissel goed en rijd naar boven naar de cementfabriek om te lossen. >Dan start de passagierstrein rijd over de baan terug naar het schaduw station rijd binnen op het doorlopend spoor in de keerlus kiest een vrijliggend opstelspoor en wacht.
Enfin alles kan terug opnieuw beginnen.
Rijden met Multi-maaus DCC protocol Welke  soorttrein ook hij moet altijd het vrijliggend spoor kiezen en de wissels goed zetten en zijn beurt afwachten ( ophoudschakeling of zoiets) Dit voor H0.
PS:  Voor mijn tuinspoor geldt hetzelfde maar dan natuurlijk bovengronds als rangeerterrein ingericht. Het principe is hetzelfde maar is  analoog aangestuurd ( klimaat omstandigheden). Maar dat is een ander draadje in en ander topic op ons forum. Sorry even vermelden.
Oplossing

Tja beste vrienden hopend op jullie hulp.....[:D][;)]
.
O
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 februari 2012, 11:56:07 am
Een beetje zitten 'spelen' met HTML na het lezen van een interessante HTML handleiding (http://"http://www.handleidinghtml.nl/") en de pagina een beetje aangepast en voorzien van wat commentaar.  De pagina wordt geen how-to!  Alleen wat verduidelijking en de stappen die ik zet om tot een project te komen.

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_1.htm")

@JP: er zitten drie timers in de chip en ben van plan om die alle drie te gebruiken (eentje via interrupt).

@Geert: die USB-I2C (http://"http://www.pctoytoy.be/jal/usb_i2c/usb_i2c_1.htm") omzetter is bijna af en heeft ook al (het begin van) een pagina.

@Argilla: ik vrees dat je 'probleem' wat groot is voor ??n controllertje...  Maar wie weet...

Wordt vervolgd...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 februari 2012, 12:13:18 pm
@Argilla: is dit voor en reeds bestaande baan, of mag er hier en daar wat aangepast worden aan je sporenplan?

Ik weet niet of het een goed idee is, maar waarom neem je het schaduwstation niet op in de keerlus. Zo zullen binnenkomende treinen eerst de lus moeten nemen om zo het schaduwstation te bereiken. Bij het verlaten van het schaduwstation verlaat de trein ook de keerlus.

En hoe wil je de wissels aansturen? Servo, spoelen ...



Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 07 februari 2012, 12:13:51 pm
Sorry jongens ben nog iets vergeten te vragen

Multi-Maus maakt die gebruik van firmware ? Want dan gebruiken ze PROM's hetzij DIP's of PLCC's Prom's. In dit kader kan je die vervangen door upgrades kwestie van meer functies te ondersteunen .


Heb ondertussen mijn klein huiswerk gemaakt Gerolf, om te kunnen volgen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 07 februari 2012, 12:18:49 pm
Citaat
Geplaatst door Geert

@Argilla: is dit voor en reeds bestaande baan, of mag er hier en daar wat aangepast worden aan je sporenplan?

Ik weet niet of het een goed idee is, maar waarom neem je het schaduwstation niet op in de keerlus. Zo zullen binnenkomende treinen eerst de lus moeten nemen om zo het schaduwstation te bereiken. Bij het verlaten van het schaduwstation verlaat de trein ook de keerlus.

En hoe wil je de wissels aansturen? Servo, spoelen ...


Geert het is een bestaande baan. Maar het schaduw station vormt het probleem zoals je terecht vermoed en is nog niet af  dwz
Dat van die keerlus is goed gevonden en ga zal ook aangepast worden zoals jij voorstelt. Voordeel is de opstelsporen kunnen verlengd worden tot 4 meter. Waar het nu 2meter ( het langste spoor).
De wisselaandrijving zijn motors.Torque motors.Wissels zijn van Peco elektrofrog zoals de rails trouwens ook maar dan code 100 ipv op de baan code 75



Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 februari 2012, 13:57:30 pm
Even een voorstel van een mogelijke oplossing die praktisch realiseerbaar is:

edit: versie waar schaduwstation mee opgenomen is in keerlus

Dit gaat voorlopig enkel met ??n rijdende lok, de andere staan stil?


1) je stuurt een lok in de tunnel naar keerlus + schaduwstation.

2) ?C heeft mee geluisterd welke lok aangestuurd wordt via DCC detectie en genereert hetzelfde signaal in fase op de volledige keerlus+ schaduwstation die gescheiden is van het overige sporennet . (extere booster, eventueel zelf eenvoudig te maken)

3) ?C detecteert wanneer de lok de keerlus bereikt  via stroomdetectie (meting spanningsval over diodes via analoge ingang ?C)

4) ?C weet welk spoor nog vrij is en stuurt de lok er heen. (aansturen wisselstraat)

5) via stroomdetectie weet de ?C of de lok het schaduwstation bereikt en zal zelf een DCC signaal genereren die de lok afremt.
 
6)  op het einde van elk opstelspoor is er weer een stroomdetectie waarbij de ?C weet dat hij de lok moet doen stoppen.

7) je moet wel zelf op je Multi-mouse de lok ook stoppen.

8) selecteer je een andere lok en geef je deze een bepaalde snelheid, dan weet de ?C waar de lok staat, zal eventueel de uitgaande wissels goed plaatsen (indien nodig) en genereert een DCC signaal in fase met deze van de Multi-mouse. (keerlusprobleem opgelost via deze wijze)

9) sommige loks hebben een vaste plek, of hoeven helemaal niet te stoppen, dan moet de ?C dit weten.  Er zal dus ook instellingen voorzien moeten worden in de ?C via CV.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 08 februari 2012, 08:14:36 am
De oplossing van Geert is heel interessant.Eigenlijk eenvoudig als je het leest.
Maar.... tussen praktijk en realiteit staan...... juist ja
Dus hoe moet ik dit nu praktisch aanpakken. Tekeningen , om de oplossing te begrijpen. De praktische uitvoering zeg maar.

Alvast bedankt Geert voor de hulp.[:)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 08 februari 2012, 13:10:40 pm
citaat:
Geplaatst door Geert

...2) ?C heeft mee geluisterd welke lok aangestuurd wordt via DCC detectie en genereert hetzelfde signaal in fase op de volledige keerlus+ schaduwstation die gescheiden is van het overige sporennet . (extere booster, eventueel zelf eenvoudig te maken)...



Dat is nu net een zaak waar ik (theoretisch in dit stadium) naar een oplossing zoek (niet voor DCC maar voor MM - het principe blijft gelijk).

Wanneer je rijdend materieel in een vaste sequentie op een spoor komt, is dat maar vast te programmeren.  Wanneer ze echter willekeurig door elkaar komen, moet je 'systeem' weten welke lok er binnen komt om die te kunnen overnemen.

De mogelijke oplossingen (elk met hun voor- en nadelen) heb ik reeds bestudeerd (Lissy, barcodelezer, RFID), maar ze zijn allemaal vrij gecompliceerd (hard- en softwarematig en/of duur en/of storinggevoelig).

De oplossing die voor mij haalbaar zou zijn (en die ik in overweging neem), is om een lok te laten halthouden (voor een sein?) in een stroomloos gemaakt gedeelte (eventueel - af en toe eens negatief voeden om de decoderinstellingen te bewaren).  Via een detectie 'zie' je dat er een lok staat.  Het systeem dat moet overnemen begint nu ??n na ??n alle mogelijke adressen te doorlopen met een ingestelde snelheid.  Iets verder ligt er weer een detectie en wanneer die detectie wordt aangesproken is de lok aan het rijden en heb je het adres om verder te besturen.  

Je controller houdt een lijst bij van alle loks die op de eigenlijke baan rijden en houdt ook hun instellingen bij (lichten, geluid,...).  Wanneer de controller de lok 'overneemt', stuurt hij ook weer die instellingen naar de lok...

't Is maar een 'denkpiste'...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 februari 2012, 15:31:45 pm
citaat:
Geplaatst door PeterC


De oplossing die voor mij haalbaar zou zijn (en die ik in overweging neem), is om een lok te laten halthouden (voor een sein?) in een stroomloos gemaakt gedeelte (eventueel - af en toe eens negatief voeden om de decoderinstellingen te bewaren).  Via een detectie 'zie' je dat er een lok staat.  Het systeem dat moet overnemen begint nu ??n na ??n alle mogelijke adressen te doorlopen met een ingestelde snelheid.  Iets verder ligt er weer een detectie en wanneer die detectie wordt aangesproken is de lok aan het rijden en heb je het adres om verder te besturen.  

...

't Is maar een 'denkpiste'...




In deze denkpiste zit meer waarheid in dan je denkt.

Laten we veronderstellen dat er meer dan ??n MM-lok actief is. Welke loks actief zijn, en wat hun snelheden zijn kan de ?C afleiden uit het MM protocol.

Op het moment dat een lok het schaduwstation benaderd (massa of stroomdetectie), dan weet de ?C dat dit ??n van de actieve loks moet zijn, welke dat weet hij niet.

Nu genereerd de ?C zijn eigen MM signaal met een eigen booster, en gaat de ?C  de snelheid van de op dat moment al de onbekende loks afremmen naar een aanvaardbare lage rangeersnelheid.

De ?C weet welk opstelspoor vrij is en stuurt de onbekend lok er heen.

Op het moment dat het einde van het opstelspoor is bereikt (detectie) stopt de ?C al de onbekende loks, nog steeds weet de ?C niet welke lok het is, maar de ?C weet wel welke het zouden kunnen zijn.

Nu zal er wel  ooit van de MM centrale de vraag komen om een lok op snelheid te brengen.  De ?C weet welke bekende maar ook onbekend loks er in het schaduwstation staan. Is het een bekende, dan is het simpel, is het een onbekende, dan zal hij de mogelijke MM loks ??n voor ??n aansturen en detecteren of er beweging is.

De rest kan je zelf invullen?


Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 08 februari 2012, 16:09:09 pm
citaat:
Geplaatst door Geert

...dan weet de ?C dat dit ??n van de actieve loks moet zijn, welke dat weet hij niet...



Het adres van de lok is ??n van de mogelijke 80 adressen.


citaat:
Geplaatst door Geert

...Nu genereerd de ?C zijn eigen MM signaal met een eigen booster, en gaat de ?C  de snelheid van de op dat moment al de onbekende loks afremmen naar een aanvaardbare lage rangeersnelheid.



Daar knelt volgens mij het schoentje.  De ?C stuurt 'blind' alle mogelijke loks (die waarvan hij hun adres op de eigenlijke baan heeft zien voorbijkomen).  Bij enkele loks gaat dat nog, maar in het uiterste geval als alle adressen in gebruik zijn, moet hij die 80 adressen aansturen (een cyclus om alle 80 die adressen (loks) op een andere snelheid te zetten duurt 2 seconden.  En wat met de loks die al op de sporen staan van het gedeelte dat de controller bediend?  Die gaan ook allemaal terug beginnen rijden want de ?C weet niet welke loks hij moet overnemen...

Ik denk dat het eenvoudiger en vooral handiger is wanneer je controller proefondervindelijk vaststeld welk adres de lok heeft die hij moet gaan bedienen.  Hij hoeft dan enkel dat adres aan te sturen.  Maar ook weer in het uiterste geval duurt het 2 seconden (zonder optrekvertraging bij te rekenen) voor hij weet welke lok op zijn gedeelte staat...



Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 februari 2012, 16:46:46 pm
met actieve lok bedoel ik degene die aan het rijden zijn, met een normale booster  max een 5 tal. De ander staan stil en moeten niet aangestuurd worden.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 februari 2012, 17:47:13 pm
Ik volg slechts gedeeltelijk, omdat ik geen digitale rijder ben.
Het idee om je loc even te laten stoppen vooraleer het schaduwstation in te rijden, en hem dan te identificeren klinkt niet slecht.
Maar kan dat identificeren niet op een andere manier? Als je van dat inrijblok even een "programmeerspoor" maakt - volledig isoleren dus -kan je dan niet opvragen welke lok het is ?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 februari 2012, 21:32:47 pm
citaat:
Geplaatst door Gerolf

Ik volg slechts gedeeltelijk, omdat ik geen digitale rijder ben.
Het idee om je loc even te laten stoppen vooraleer het schaduwstation in te rijden, en hem dan te identificeren klinkt niet slecht.
Maar kan dat identificeren niet op een andere manier? Als je van dat inrijblok even een "programmeerspoor" maakt - volledig isoleren dus -kan je dan niet opvragen welke lok het is ?



Deze oplossing kan bij DCC en Mfx handig zijn. Maar MM heeft geen terugmeldmogelijkheid.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 09 februari 2012, 16:22:21 pm
citaat:
Geplaatst door Geert

citaat:
Geplaatst door Gerolf

Ik volg slechts gedeeltelijk, omdat ik geen digitale rijder ben.
Het idee om je loc even te laten stoppen vooraleer het schaduwstation in te rijden, en hem dan te identificeren klinkt niet slecht.
Maar kan dat identificeren niet op een andere manier? Als je van dat inrijblok even een "programmeerspoor" maakt - volledig isoleren dus -kan je dan niet opvragen welke lok het is ?



Deze oplossing kan bij DCC en Mfx handig zijn. Maar MM heeft geen terugmeldmogelijkheid.

Geert



misschien met reed contacten ??
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 februari 2012, 20:14:55 pm
Argilla, die terugmeldmogelijkheden gaan hem wel om digitale terugmelding (maw communicatie tussen de lok en de ?C)...




Het knipperlichtprojectje wat uitgebreid.  Een timer neemt nu de timing over.

Het 16F684-project (pagina 2) (http://"http://www.pctoytoy.be/jal/16f684/16f684_2.htm")

Volgende stap is de timer in een interruptprocedure te zetten en nog meer tijd voor de ?C vrij te maken (als toetje met een extra timer de led dan gedurende de aan-tijd wat hevig laten knipperen).

Het programmeren gaat heel vlot, die HTML pagina's daarentegen [xx(][xx(][xx(]...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 09 februari 2012, 20:29:14 pm
citaat:
Geplaatst door PeterC

Argilla, die terugmaldmogelijkheden gaan hem wel om digitale terugmelding (maw communicatie tussen de lok en de ?C)...




Het knipperlichtprojectje wat uitgebreid.  Een timer neemt nu de timing over.

Het 16F684-project (pagina 2) (http://"http://www.pctoytoy.be/jal/16f684/16f684_2.htm")

Volgende stap is de timer in een interruptprocedure te zetten en nog meer tijd voor de ?C vrij te maken (als toetje met een extra timer de led dan gedurende de aan-tijd wat hevig laten knipperen).

Het programmeren gaat heel vlot, die HTML pagina's daarentegen [xx(][xx(][xx(]...






Peter C, heel blij dat je reageert.
Maar een beetje chinees voor mij. Ik ben geen crack qua elektronica dus wat is een HTLM ?
En programmeren kan ik al helemaal niet. Destijds heb ik mij eventjes bezig gehouden met Q-basic maar dat was heeeel summier hoor (Vic -20 en ZX-81 die ik trouwens nog in bezit heb).
Daarom ...
Maar toch heb ik de zin om bij te leren en het in de praktijk te brengen of is dit niet logisch ?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 februari 2012, 20:36:26 pm
Hyper Text Markup Language!
Met andere woorden: de tekst waar de meeste internetpagina's mee geschreven zijn.  Rechts klikken op een internetpagina en dan op 'bron weergeven' eens klikken [;)]
Ik heb veel meer werk met hier enkele pagina's aan te bieden dan met hopen PIC programma's te schrijven[;)].
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 09 februari 2012, 20:58:39 pm
citaat:
Geplaatst door PeterC
Ik heb veel meer werk met hier enkele pagina's aan te bieden dan met hopen PIC programma's te schrijven[;)].



Dat probleem heb ik ergens ook. Heel wat uitgewerkte projecten die ik best wil delen met mede modelspoorders op een webpagina, maar je steekt er zo veel extra tijd in h?...

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 09 februari 2012, 22:25:34 pm
citaat:
Geplaatst door PeterC
...Ik heb veel meer werk met hier enkele pagina's aan te bieden dan met hopen PIC programma's te schrijven ...

Maar het is net DAT wat beginners het meeste zullen apprecieren: het stap voor stap uitlegen wat wat is, en waarom elke stap voorzien is ...
Velen zullen je dankbaar zijn [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 februari 2012, 12:58:04 pm
citaat:
Geplaatst door Steam.N

citaat:
Geplaatst door PeterC
...Ik heb veel meer werk met hier enkele pagina's aan te bieden dan met hopen PIC programma's te schrijven ...

Maar het is net DAT wat beginners het meeste zullen apprecieren: het stap voor stap uitlegen wat wat is, en waarom elke stap voorzien is ...
Velen zullen je dankbaar zijn [;)]



Jean, bedankt voor de steun!  Dat motiveert om verder te doen (de pageviews van dat projectje gingen mij overtuigen om ermee te stoppen...).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 februari 2012, 18:22:18 pm
citaat:
Geplaatst door argilla

... en ZX-81 die ik trouwens nog in bezit heb...



Argilla een ZX-81 en dat voor een dertienjarige [^][^][^]

Vergane glorie [^][^][^]
(http://www.old-computers.com/museum/photos/sinclair_zx81_1s.jpg)
bron: http://www.old-computers.com/museum/
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 10 februari 2012, 20:20:19 pm
citaat:
Geplaatst door PeterC

citaat:
Geplaatst door argilla

... en ZX-81 die ik trouwens nog in bezit heb...



Argilla een ZX-81 en dat voor een dertienjarige [^][^][^]

Vergane glorie [^][^][^]
(http://www.old-computers.com/museum/photos/sinclair_zx81_1s.jpg)
bron: http://www.old-computers.com/museum/




Zou je daar nu heden ten dage nog een modelbaan mede kunnen aansturen?
Destijds wel een eenvoudige.Via het boekje "elektronica projecten met de zx-81" had je daarin een interface en een bijhorend programmaatje voor. Zo geinig zijn he met zo een oud ding een modern grote modelbaaan aansturen [:D][:D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 februari 2012, 20:39:05 pm
Argilla, het is een volwaardige Z80 die daarin zit.  Het RAM geheugen is wel wat klein (1 of 2 KB).  Mits wat aanpassing, nog een EEPROM programmer vinden en veeeeeeeeel werk zou het nog wel lukken...

Maar ik zou er niet aan beginnen [^][^][^]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 11 februari 2012, 09:58:03 am
citaat:
Geplaatst door PeterC

Argilla, het is een volwaardige Z80 die daarin zit.  Het RAM geheugen is wel wat klein (1 of 2 KB).  Mits wat aanpassing, nog een EEPROM programmer vinden en veeeeeeeeel werk zou het nog wel lukken...

Maar ik zou er niet aan beginnen [^][^][^]





Peter, de zx -81 is er eentje met een opsteekmodule uitbreiding van 16 K
Maar je hebt gelijk niet aan te beginnen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 11 februari 2012, 10:45:25 am
Nostalgie. 16 K geheugen hadden we toendertijd ter beschikking.
Voor de jeugd: niet lachen h?. [:(!]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 februari 2012, 14:43:21 pm
(Don't) interrupt me!

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_3.htm") (pagina 3)
...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 februari 2012, 20:02:54 pm
citaat:
Geplaatst door doomslu

Nostalgie. 16 K geheugen hadden we toendertijd ter beschikking.
Voor de jeugd: niet lachen h?. [:(!]


In mijn jonge jaren nog een volledige liftsturing geprogrammeerd op net iets minder dan 1K (1024 bytes) - noodgevallen waren er niet bij (geen ruimte om te programmeren) - en als we nu kijken naar een PC geheugen (als je wat mee bent: 4GB ) is dat 4 miljoen keer meer dan dat ik toen ter beschikking had....

Met diezelfde code van weleer kan ik nu (in code en met die hoeveelheid geheugen): de lift sturen;  de dames een 'heel uitgebreide' verwenbeurt geven, de heren van een aangepast drankje voorzien en met z'n allen een gezellig praatje maken...  

...helaas is met de toegenomen hoeveelheid geheugen het programmeren er enorm op verwaarloosd.  Bytes tellen niet meer en enkele MB's (GB's) meer om sneller een 'product' af te leveren spelen geen rol meer...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 februari 2012, 12:17:10 pm
Controllers en nauwkeurigheid...  Valkuil!

Bij het uitbreiden van mijn 16F684-projectje (http://"http://www.pctoytoy.be/jal/16f684/16f684_1.htm"), wou ik een dokatimer maken.  Met twee potmeters de tijd instellen (??n voor de minuten, ??n voor de seconden - dit om de werking van de ADC te laten zien) en de tijd op een LCD scherm laten zien (ingesteld en resterend).  Via een knopje wordt de timer gestart.  Geen probleem, alles werkt.

Maar toch...  ...aangezien ik een controlefreak ben, toch een chrono ernaast en de werkelijke tijd meten...
Bij 3000 seconden (volgens de ?C) kwam ik in werkelijkheid op 3021.6 seconden...  Meerdere metingen (over lange tijd) en er was telkens een fout van -0.7%!

De code nagezien en nogmaals nagezien...  tot ik de datasheet van de processor nog eens ter handen nam en daarin staat letterlijk dat de interne oscillator (die ik gebruik) vanuit het productieproces gecallibreerd is op +/-1%!  Met mijn -0.7% zat ik onder die limiet.  Een andere controller met dezelfde software gaf een afwijking van -0.5% (telkens een negatieve afwijking - de werkelijke tijd is minder dan de gecontrolleerde).

De oplossing: een kristal aan de controller hangen (tollerantie 0.000050 % - 50 ppm) maar dan 'verlies' je twee aansluitpennen...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 februari 2012, 12:51:38 pm
Kan je met de OSCTUNE Register de OSCILLATOR-frequentie niet aanpassen?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 februari 2012, 13:00:14 pm
Geert, inderdaad, maar dat moet voor iedere PIC afzonderlijk gebeuren en dan heb je een juiste referentie nodig om je tijd mee te synchroniseren...  Je zou al een testcircuit moeten opbouwen, software in de chip die de klok op de juiste frequentie instelt en die die waarde teruggeeft (of in zijn geheugen opslaat).  Je definitieve software zou dan die waarde kunnen uitlezen.

Ik ga voor de 1% fout of een kristal [^].
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 13 februari 2012, 13:04:01 pm
Peter,

heb je niet automatisch een kleine vertraging, omdat je telkens de interrupt routine activeert?
Fout zal klein zijn, maar als je dat duizende keren doet ...
Zelfs als je als eerste instructie de timer terug opstart ...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 februari 2012, 13:28:10 pm
Jean, ja en neen: je interrupt komt klokvast op hetzelfde tijdstip.  De routine wordt telkens evenveel ?s later geactiveerd en de vlag wordt ook weer telkens evenveel ?s later gezet.  Er is wel een vertraging tussen het moment van de interrupt en het moment wanneer de tijd op het scherm verschijnt, maar dat verschil is constant en cummuleert niet.

Het is wel degelijk een afwijking van de oscillatorfrequentie en om heel zeker te zijn zou ik er eens een 4MHZ kristal moeten aanhangen en opnieuw testen (maar dat kristal vinden in al die doosjes met componenten [:0][:0][:0]...).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 februari 2012, 16:40:08 pm
Hello World!

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_4.htm") (pagina 4)
...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 15 februari 2012, 19:09:52 pm
Duidelijke uitleg.  Goed te volgen.
Benieuwd hoe je verder gaat [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 februari 2012, 20:31:10 pm
Het vervolg: Terug naar analoog.

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_5.htm") (pagina 5).
...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 februari 2012, 21:57:34 pm
Goe bezig Peter. Ik heb me tot hiertoe enkel beperkt tot ASM-code en de C-taal. Ik weet dat er een JAL-taal bestaat, met jou handleiding zal ik binnenkort ook eens iets programmeren met JAL.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 februari 2012, 19:06:20 pm
citaat:
Geplaatst door Geert

...ASM-code en de C-taal...



Geert, lang met ASM bezig geweest maar kan er de moed niet meer voor opbrengen om zo op bitniveau bezig te zijn.  Met ASM heb je 200% je controller in handen maar is ook zo foutgevoelig.  Weinig of geen foutcontrole en zoveel tijd om te debuggen (je progje mag nog zo goed geschreven zijn, foutjes zitten er altijd in...).

C?  C en C++ enkel gebruik voor (Windows) programma's.  Ook al een tijdje geleden van afgestapt omdat je werkelijk alles kan (ook zaken die je niet wilt!) en alles in de handen hebt.  Overgestapt op object-pascal (Delphi) die wel veel overhead geeft (enorme exe's) maar die minder 'fouten' toelaten.

Voor PIC's vind ik JAL een ideale taal.  Je kan zowel high- als lowlevel gaan werken (gebruik de statement ASM of ASSEMBER/END ASSEMBLER en je kan ganse blokken in ASM toevoegen).

...

Er komt (tijdelijk) een onderbreking in mijn 16F684-projectje...  Vanaf volgende week heb ik enkel nog mijn rechterarm ter beschikking en wordt het wat moeilijk om die (toch enorm veel werk vragende) HTML pagina's te maken...

Nog enkele zaken heb ik in het vooruitzicht: digitale input (schakelaars) en dan als 'eindwerkjes' een doka-timer (tot 23:59:59 instelbaar) en tenslotte een servotester.

Tot...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 17 februari 2012, 19:17:01 pm
Veel sterkte, en een spoedig herstel!
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 februari 2012, 19:35:58 pm
citaat:
Geplaatst door PeterC

citaat:
Geplaatst door Geert

...ASM-code en de C-taal...



Geert, lang met ASM bezig geweest maar kan er de moed niet meer voor opbrengen om zo op bitniveau bezig te zijn.  Met ASM heb je 200% je controller in handen maar is ook zo foutgevoelig.  Weinig of geen foutcontrole en zoveel tijd om te debuggen (je progje mag nog zo goed geschreven zijn, foutjes zitten er altijd in...).

C?  C en C++ enkel gebruik voor (Windows) programma's.  Ook al een tijdje geleden van afgestapt omdat je werkelijk alles kan (ook zaken die je niet wilt!) en alles in de handen hebt.  Overgestapt op object-pascal (Delphi) die wel veel overhead geeft (enorme exe's) maar die minder 'fouten' toelaten.

Voor PIC's vind ik JAL een ideale taal.  Je kan zowel high- als lowlevel gaan werken (gebruik de statement ASM of ASSEMBER/END ASSEMBLER en je kan ganse blokken in ASM toevoegen).

...

Er komt (tijdelijk) een onderbreking in mijn 16F684-projectje...  Vanaf volgende week heb ik enkel nog mijn rechterarm ter beschikking en wordt het wat moeilijk om die (toch enorm veel werk vragende) HTML pagina's te maken...

Nog enkele zaken heb ik in het vooruitzicht: digitale input (schakelaars) en dan als 'eindwerkjes' een doka-timer (tot 23:59:59 instelbaar) en tenslotte een servotester.

Tot...




Je vooruitzichtjes mogen er best wezen. Ik ben ??n al oor (en oog).

Goed herstel gewenst...


Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 februari 2012, 21:15:33 pm
Die vooruitzichten zijn eigenlijk meer als 'tutorials' bedoeld (oa voor mezelf: wanneer ik enkele maanden geen zin meer heb in PIC's, vergeet ik veel).  Die servotester is met dit projectje de uiteindelijke doelstelling.  Die doka-timer is een 'spin-off' voor een collega modelbouwer bij wie ik in zijn draadjes nogal graag commentaar lever (telkens als stimulans [;)]).

Mijn uiteindelijke doelstelling reikt net iets verder: het probleem van Argilla heeft mij aan het denken gezet (automatische adresherkenning) en dit onderdeel zou ik in mijn (ooit eens te verwezenlijken) automatische schuif-fiddle-yard willen gebruiken (zie mijn  'testbaantje').  Het MM protocol decoderen is ??n, het uiteindelijk terug coderen is een andere zaak (en nogal tijdkritisch - 18 ?s voor een kleine puls...).  Misschien iets om 'gemeenschappelijk' over te brainstormen?

waneer ik zoonder hoofdleters enveel vauten terug de draadopneem ben ik aan de beterhand [^][^][^]

Aan allen: Bedankt voor de steun!
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 21 februari 2012, 21:01:59 pm
Hoi allemaal,


Nu pas dit topic ontdekt ...
Electronica is voor mij een even grote hobby als het (model)spoorgebeuren zelf.
Ik heb reeds m'n eigen bussysteem ontwikkeld, waarmee ik letterlijk alles aanstuur in m'n modelspoorkamer.
Verder nog een complete dag/nacht sturing, bestaande uit dimbare TL's, RGB LEDstrips en halogeen plafondspots.

Het "laatstenieuwe" waar ik nu mee bezig ben, is een variant op het digitale Faller Carsystem.
Ik moest en zou FCS implementeren op m'n baanuitbreiding, en 't moest ook nog eens digitaal zijn :-)
Bij het bekijken van de mogelijke varianten, kwam ik steevast op enkele nadelen uit, waar ik absoluut niet mee wilde leven :-)

- het systeem van VPEB, nog 2 extra draden naast de rijdraad, man man,  wat een werk :-)
- infracar/dccar, overal IR zenddiodes implementeren, dat zag ik ook niet echt zitten.
- het nieuwe digitale FCS, is ook niet "het van het", buiten duur, stoppen en starten de voertuigen nogsteeds even "bruut" als altijd.

Mijn eisen: goedkoper dan bestaande systemen, en RF-based. (dus ??n zender)
Zodoende ben ik wat beginnen "rommelen", en ben ik begonnen met een digitale fotoframe die ik nog had liggen, een O2 Joggler (met touchscreen). Na wat googlen, ben ik erin geslaagd om Android 2.2 draaiende te krijgen op deze fotoframe. Vervolgens ben ik begonnen om te "programmeren" op dit ding. SRCP implementatie, en die vervolgens via bluetooth doorsturen naar een zelfgebouwde centrale, die dan die data omzet in RF-signalen voor m'n zelf-ontwikkelde decoders.

Status: alles werkt eigenlijk, centrale & 2 decoders op breadboard opgebouwd. Printen zijn al getekend, maar kan pas in april beginnen met frezen van de PCB's en solderen en inbouwen in de voertuigen.
In combinatie met Rocrail draait alles perfect, maar in principe werkt dit dus met elke software samen die SRCP ondersteunt. (Ook koploper dus)
Snelheid van de voertuigen kan geregeld worden, knipperlichten, voor/achter-lichten, remlichten en claxon :-)
(later komt er nog een sequencer-uitbreiding voor ambulances, brandweerauto's enz ...)

Verder heb ik al enige tijd verkeerslichten modules hiervoor gebouwd,
dus die komen nu ook goed van pas. (m'n verkeerslicht-modules hebben zelfs voetgangers-lichten, dat zie je te weinig op modelbanen)

Aangezien RocRail de Merg RFID modules ondersteunt, maar dit systeem alleen maar beschikbaar is als je een jaarlijks MERG lidgeld betaald, ben ik ook dit systeem zelf aan't nabouwen. 8 RFID lezer, die via een zelf ontwikkelde print, de data via USB over een virtuele COM-poort aan RocRail doorgeeft, volgens het (simpele) MERG protocol zelf.
RFID tags van 0,6mm dik en 22mm diameter, heb je al voor 1 euro per stuk, dus dat valt ook nog mee :-)
Dit systeem is zowel bruikbaar voor treinen, alsook voor m'n eigen FCS systeem eigenlijk ...

Zo, dat was het even, ben namelijk nogsteeds met m'n HHC behandeling bezig. (moest normaal vorige week m'n laatste behandeling hebben gehad, maar na bloed-onderzoek is er beslist om nog 3 bijkomende sessies te doen, laatste behandeling is dan 8 maart, dus hopelijk ben ik vanaf half maart terug wat "actiever" (alhoewel dit soms met momenten nu ook wel een beetje gebeurt, maar dan vooral "rustig" achter m'n PC schema's tekenen, PCB's tekenen en firmware schrijven, het "echte" fysische werk is voor later en kan ik momenteel niet aan))

Verder ben ik niet zo "merk-trouw". Ik gebruik meestal Microchip PIC's, maar voor Atmel AVR's deins ik ook niet terug, en heb dan ook van beiden de nodige voorraden liggen :-)
Qua programmeertaal: meestal grijp ik voor de PIC naar Microchips' C zelf, maar h??l af en toe durf ik PicBasic ook wel eens gebruiken :-)
Voor de AVRs gebruik ik ook meestal C, maar evengoed al eens Bascom ...
Op Android programmeer ik in Googles' App Inventor, maar ook al eens in Basic4Android :-)
Voor m'n FriendlyArm dev boards programmeer ik gewoon in Visual Studio C#
Eigenlijk programmeer ik op alles wat enigsinds gedocumentari?erd is, zo heb ik ook enige "ervaring" op Sega Dreamcast, Playstation & Xbox, waar ik zowel simpele games op ontwikkelde, alsook meewerkte aan free libs voor de home-dev scene wat te ondersteunen ...


Interesse in bepaalde zaken ? Meer info kan je altijd vinden op m'n webstek:  http://www.digitalplayground.be


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 21 februari 2012, 23:18:39 pm
Wow, Kris, je hebt al een hele boel gerealiseerd !
Het staat allemaal op mijn "ooit-ga-ik-dat-ook-doen" lijstje, maar ik heb nu al genoeg op de plank.

Mogen we hopen dat je het een en ander van je projecten wat ga toelichten?
Dat zou pas echt leerzaam zijn.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 22 februari 2012, 00:54:32 am
Super Kris. Ik ben eens benieuwd naar uw realisatie's.
Ben zelf ook zo'n doe het zelver die graag experimenteert.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 22 februari 2012, 08:29:52 am
Vraag maar raak, ben altijd bereid om schema's en PCB layouts te posten, firmware te posten, en er de nodige uitleg bij te schrijven :-)
(maar jullie zullen wel wat geduld met me moeten hebben, door gezondheidsredenen)


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 februari 2012, 11:23:48 am
RFID interesseert me wel (op termijn), om rollend materieel te identificeren lijkt me dit een prima methode [:p]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 22 februari 2012, 11:49:05 am
Kris, als we er maar om te vragen hebben, graag je bussysteem en RFID met communicatie [;)]
Ondertussen je link eens gevolgd ... INDRUKWEKKEND !!! Knap.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 februari 2012, 21:18:04 pm
Mijn eerste werkende PIC projectje van enkele jaren terug. Een S88 terugmelder met een 16F870 ?C.  Ik ben nu bezig deze om te programmeren voor een 16F887 ?C.  Met de 16F887 kan ik 32 terugmeldingen steken in ??n ?C i.p.v. 16, met dit verschil dat deze goedkoper is. Dit moet voor 0.25? per terugmeldbit kunnen lukken.


Maar voor de ge?nteresseerden hierbij hoe ik een S88 terugmelder programmeer in een PIC 16F870 ?C:


(http://users.telenet.be/RedDeBist/MBAAN/s88 terugmelding met PIC microcontroller principe.PNG)

De basis bestaat uit een geprogrammeerde condensator en Smith-trigger.  De geprogrammeerde condensator is in wezen een  0 tot 255 bit teller. Een ingang wordt herhaaldelijk (en snel) ingelezen door de ?C en zal afhankelijk van de logische waarde van de ingang de teller verhogen of verlagen. De Smith-trigger  zal afhankelijk van de waarde van de teller een logische 1 of 0 doorgeven aan de schuifregister. Kortstondige stoorpieken of slecht wielcontact heeft zo geen invloed op de terugmelding.


(http://users.telenet.be/RedDeBist/MBAAN/s88 terugmelding met PIC microcontroller schema.PNG)
 
Als het idee er is, dan zoek ik de ideale in-output configuratie van de PIC ?C.


(http://users.telenet.be/RedDeBist/MBAAN/s88 terugmelding met PIC microcontroller logisch schema.PNG)

Nu moeten we het idee omzetten naar een logische schakeling die we kunnen programmeren in de PIC ?C.


(http://users.telenet.be/RedDeBist/MBAAN/s88 terugmelding met PIC microcontroller print.PNG)

Uiteindelijk ontwerp ik een strokenprintje waarop ik de schakeling kan testen.



Deze schakeling is reeds uitgevoerd en getest met MR-direct.  Een filmpje en de ASM-code ga ik eerstdaags op mijn site plaatsen.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 24 februari 2012, 06:20:34 am
Geert, dat ziet er bedriegelijk eenvoudig uit!
Het verhoogt weer de goesting om de draad van ?C terug op te nemen.
Spijtig genoeg heeft de dag maar 24 uren, en zit mijn werktafel vol met andere rommel projecten.
Knap gedaan.  Volgt de broncode ook?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 februari 2012, 07:50:43 am
De broncode zal gelinkt worden op een webpagina die ik nog moet maken. Ik doe dit zo omdat er wel eens wijzigingen komen in de ASM-code. Elke wijziging krijgt een ander nummer en wordt ook zo aangepast in de file-naam.  Om te voorkomen dat linken niet meer bestaan op een forum doe ik het via een webpagina.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 februari 2012, 08:01:52 am
citaat:
Geplaatst door Geert
De basis bestaat uit een geprogrammeerde condensator en Smith-trigger.  De geprogrammeerde condensator is in wezen een  0 tot 255 bit teller. Een ingang wordt herhaaldelijk (en snel) ingelezen door de ?C en zal afhankelijk van de logische waarde van de ingang de teller verhogen of verlagen. De Smith-trigger  zal afhankelijk van de waarde van de teller een logische 1 of 0 doorgeven aan de schuifregister. Kortstondige stoorpieken of slecht wielcontact heeft zo geen invloed op de terugmelding.
Goede vondst [8D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 24 februari 2012, 08:15:12 am
Jammer dat ik de de benodigde s88 allemaal al gemaakt heb.
Had zeker dit ontwerp genomen.
Het is geniaal gevonden en aan onderdelen nog spot goedkoop ook.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 februari 2012, 16:03:10 pm
Een s88 terugmelder zoals ik deze hiervoor al beschreven had maar nu eentje met 32 ingangen. Broncode volgt?

(http://users.telenet.be/RedDeBist/MBAAN/S88 terugmelder met PIC 16F887.png)

Als je er een extra PIC omgekeerd boven de S88 bus plaatst dan heb je al 64 terugmeldingen op ??n print. Of drie naast elkaar is 96 enz...[^]

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 24 februari 2012, 16:17:29 pm
Geert, domme vraag:
Wat is die SIL8x10k?
Serial-in-line ... maar is dat n?g een weerstand in serie met die 1k per poort?
Of is het een connector-voetje?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 februari 2012, 16:34:52 pm
citaat:
Geplaatst door Steam.N

Geert, domme vraag:
Wat is die SIL8x10k?
Serial-in-line ... maar is dat n?g een weerstand in serie met die 1k per poort?
Of is het een connector-voetje?



Een SIL is een weerstandnetwerk waarbij de ene zijde van de weerstanden aan elkaar gekoppeld zijn en 1 gemeenschapelijke pin hebben (deze met het bolletje), eigenlijk staan ze parallel. Zie je veel op digitale schakelingen en zijn meestal geel van kleur.

Die weerstand van 1k is nodig om te voorkomen dat de PIC de massastroom leverd voor de Lok. Als je dat niet doet dan kan het zijn dat de PIC nog zwarter word dan hij al is [:o)]

Ik merk dat die weerstand van 1k niet duidelijk overkomt. Eigenlijk is dit een weerstand die rechtop staat. Een foto zal dit duidelijk maken. Wel een probleempje om foto's te maken... deze is mee gaan skie?n met de oudste dochter. Dit weekend komt ze hopelijk heelhuids terug. [8D]


Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 24 februari 2012, 16:44:13 pm
OK.  Ik ben weer mee ;-)
Die vertikale 1k-tjes waren geen probleem.  Die waren duidelijk.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 24 februari 2012, 17:27:16 pm
Toch leuk al dat spul dat ik hier zie voorbij komen :-)

Aangezien ikzelf vanuit alle hoeken zowat vragen krijg over al m'n ontwerpen enzo, begin ik volgende week aan tutorials over m'n bussysteem, RFID met RocRail, dag/nacht sturing (die eigenlijk deel uitmaakt van m'n bussysteem) en m'n eigen digitale versie van Faller Car System.

De bedoeling is dan dat je een uitgebreide tutorial in PDF formaat gaat kunnen downloaden vanaf m'n website, met bijhorende schema-files en PCB layouts en HEX-files, zodat men alles eenvoudig kan nabouwen.


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 24 februari 2012, 23:10:17 pm
citaat:
Geplaatst door sn00zerman

Toch leuk al dat spul dat ik hier zie voorbij komen :-)

Aangezien ikzelf vanuit alle hoeken zowat vragen krijg over al m'n ontwerpen enzo, begin ik volgende week aan tutorials over m'n bussysteem, RFID met RocRail, dag/nacht sturing (die eigenlijk deel uitmaakt van m'n bussysteem) en m'n eigen digitale versie van Faller Car System.

De bedoeling is dan dat je een uitgebreide tutorial in PDF formaat gaat kunnen downloaden vanaf m'n website, met bijhorende schema-files en PCB layouts en HEX-files, zodat men alles eenvoudig kan nabouwen.


groeten,
Kris




Ik zit al te wachten want wat u gemaakt heeft was in de hersenen hier ook datgene wat ik wenste.
Dag/nacht, faller systeem, enz...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 24 februari 2012, 23:26:56 pm
citaat:
Geplaatst door sn00zerman

...  begin ik volgende week aan tutorials over m'n bussysteem, RFID met RocRail, dag/nacht sturing ...

Ik sta te popelen [:p]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 25 februari 2012, 15:37:17 pm
@Kris: de RFID detectie die je gebruikt, is dit op een bestaande lezer gebaseerd of volledig zelfbouw (inclusief zelfbouw antenne/leesspoel)? Vanaf welke afstand worden je tags gededecteerd en binnen welk venster blijven ze gededecteerd? Heb je geen last van storingen van je loks tijdens het lezen?

Al die vragen omdat ik op zoek ben naar een eenvoudig en vooral betaalbaar/betrouwbaar systeem om al mijn rijdend materiaal te kunnen 'identificeren'...

Je site heb ik al meermaals proberen bezoeken maar op Android werken de links niet [:0][:0][:0]...

Ik kijk met interesse uit naar je tut's!  Broncode?  Of blijft die 'afgeschermd'?


@Geert: je debounce intrigeert mij... Kan je via een stukje software eens laten zien hoe je te werk gaat?  Verlies je niet teveel tijd wanneer je dat voor de 16 (32) inputs afzonderlijk moet uitvoeren?

Je manier van tekenen vind ik wel interessant en het is de eerste keer dat ik een analyse op die manier zie.  Voor iedere (digitale) electronicus direct te begrijpen, knap!

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 27 februari 2012, 12:04:14 pm
Peter,

Ik ben me er van bewust dat m'n site op Android niet helemaal is zoals het hoort, heb je Opera al eens geprobeerd ?
Enige jaren geleden is m'n vrouw begonnen met een cursus dreamweaver, zij heeft toen die site opgezet. Uiteindelijk is het er nooit meer van gekomen om die een beetje meer te "standardizeren", en blijven wij maar aanklooien met dit "model" :-)
Als ik ooit eens h??l v??l tijd heb, dan ... (lees: als ik door al m'n projecten door geraak, of als ik m'n vrouw zo ver krijg om die site eens opnieuw te ontwerpen, lol)

Voor minder dan 11,5 euro (incl. verzending) heb je een kant-en-klare RFID lezer met spoel, logica enz ... Voor dat geld kan ik die heus niet zelf bouwen :-)
Zoek op Ebay eens naar "125Khz RFID Mini Module Kits" ...

Het enige wat ik nog moest doen, is om die 10-cijferige data, om te zetten in 8-cijferige, verder er het MERG protocol rond te gieten, en te zorgen dat de communicatie met de PC loopt.
Verder heb ik ook de MERG "concentrator" nagebouwd, ik kan dus 8 van die RFID lezers op ??n print aansluiten (via netwerkkabel zijn lange afstanden geen enkel probleem), en zodoende ook de ID van de lezer zelf doorgeven aan de PC. Volledig MERG compliant dus :-)

De tags die ik gebruik, halen makkelijk 5 cm tussen de spoel en de tag zelf. Ik had in't begin ook wat schrik voor storingen enzo, maar dat er rails over die spoel lopen, en dat hier een digitale spanning op staat, maakt niks uit. Zelfs als ik een trein met hoge snelheid over zo'n "RFID lezer" laat rijden, dedecteert hij nogsteeds succesvol de tag.

In combinatie met welke software ga jij dit systeem gebruiken ? En emuleer je dan ook gewoon MERG RFID of iets anders ?
(ben altijd bereid m'n firmware aan te passen)

Sourcecode vrijgeven, daar heb ik ook geen enkel probleem mee :-)
Zal wel nodig zijn trouwens h?, ik kan me niet inbeelden dat iemand die m'n documentatie leest en iets wil nabouwen, dit klakkeloos doet, er zijn altijd wel mensen die het ene of andere aangepast willen zien in de software, zo verleg ik de "druk" van mezelf, naar de persoon met de vraag zelf. Laat die maar lekker zelf "knutselen" met mijn broncode dan :-)


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 27 februari 2012, 15:56:41 pm
citaat:
Geplaatst door PeterC
@Geert: je debounce intrigeert mij... Kan je via een stukje software eens laten zien hoe je te werk gaat?  Verlies je niet teveel tijd wanneer je dat voor de 16 (32) inputs afzonderlijk moet uitvoeren?

Je manier van tekenen vind ik wel interessant en het is de eerste keer dat ik een analyse op die manier zie.  Voor iedere (digitale) electronicus direct te begrijpen, knap!





Even uitrekenen over welke tijdsintervallen we spreken.

De PIC 16F887 klokfrequentie is 8MHz dat geeft 2000000 (twee miljoen) instructies per seconde.

De S88 CLOCK ingang genereerd een interrupt die bij een schuiftoestand 40 instructies nodig heeft. (Ik hou rekening met de extra tijd voor o.a. GOTO CALL enz?) Bij een  S88 CLOCK van 9kHz heeft de ?C 9000x40= 360000 instructies per seconde nodig om de interrupts te verwerken. Dit trekken we af van 2000000 en dit geeft een overschot van 1640000 instructies per seconde voor de tellers.

De meest voorkomende toestand van een ingang is +5V en de teller staat op 0 en doet niets. Hiervoor zijn maar 6 instructies nodig. Moet hij wel tellen dan geeft dat 10 instructies. Omdat we 32 ingangen moeten testen geeft dit 32*6 = 192 instructies om alle 32 ingangen te testen. Dit testen herhaald zich in een ?loop? die zich 1640000/192= 8540 keer per seconde herhaald. Komt ook overeen met 8540Hz of 1/8540= 117?s per loop.

Hoe lang duurt het nu om een massacontact te detecteren? Wel als de teller van 0 tot 192 telt dan set de FF zich pas op 192 maar telt wel voort to 255. De FF set zich dus pas na 117x192= 22464?s (22,5ms).



Dat tekenen doe ik gewoon met PowerPoint.

Oh ja dochter is heelhuids terug van skivakantie, maar fototoestel niet[:(]

Geert
   
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 28 februari 2012, 15:54:00 pm
@Kris: de modules gezocht en gevonden.  Inderdaad voor die prijs loont zelfbouw niet.  Op die sites heb ik ook nog andere aantrekkelijk geprijsde zaken gezien: oa laserdiodes die ik zou kunnen gebruiken voor een barcodelezer.  Dat materiaalidentificatiesysteem zou ik in eerste instantie willen gebruiken om te detecteren uit wat een passerende sleep is samengesteld zodat het systeem weet wat de totale lengte is en de sleep dan naar een gepast spoor kan sturen.  RFID en/of barcode lijken mij die oplossing te kunnen bieden.
Voor de onderlinge communicatie tussen de controllers heb ik mijn zinnen gezet op het I2C protocol dat al zijn deugdelijkheid bewezen heeft.  Voor globale communicatie hoop ik toch gebruik te kunnen maken van Loconet (maar dat is een ander paar mouwen...).

@Geert: tijd genoeg dus...  Het voordeel van asm is dat je duidelijk je benodigde tijd voor een stuk code kan zien/tellen.  Bij gebruik van een hogere programmeertaal is dit echter zo simpel niet meer.
Vandaag voor het eerst in mijn (toch al vrij lange) PC carriere eens Powerpoint opgestart en beginnen tekenen [;)]...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 05 maart 2012, 11:11:04 am
Ik doe het lekker ouderwets => seri?le signalen :-)
Momenteel ligt al m'n electronica-gedoe even stil, alsook het schrijven van de handleidingen. Er is hier namelijk vrijdag een "h??l vroeg" verjaardagskado komen binnenwaaien (ben pas jarig in april).

CO2 laser machientje :-)

Eerste resultaten in de loop van deze week nog op m'n webstek.


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 05 maart 2012, 11:51:30 am
Kris: laat je resultaten maar zien!  Ik ben benieuwd!

...


Digitale input:

Het 16F684-project (http://"http://www.pctoytoy.be/jal/16f684/16f684_6.htm") (pagina 6)

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 maart 2012, 15:12:42 pm
Peter, pagina 6 is klaar en duidelijk [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gizzmo op 05 maart 2012, 17:36:06 pm
Om toch even in te pikken op heel het Microcontroller topic ... wie heeft er al eens gekeken naar de Arduino ...?
Voor wie de Arduino nog niet kent http://www.arduino.cc/ razend populair onder de "home builders"
Ik vraag me af of dit bv. ook bruikbaar zou zijn om een S88 terugmeld module mee te bouwen?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 05 maart 2012, 17:47:14 pm
citaat:
Geplaatst door Gizzmo

 ... wie heeft er al eens gekeken naar de Arduino ...?
...Ik vraag me af of dit bv. ook bruikbaar zou zijn om een S88 terugmeld module mee te bouwen?



De Arduino is gebaseerd op een Atmega-processor en als je die taal en hardware leert, moet dat kunnen.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 maart 2012, 17:36:17 pm
Rustig bezig om een universele decoder te maken voor het Ma Motorola systeem.  Een universele decoder die op verschillende PIC's moet worden gezet en die zowel lokomotief- als seindata moet kunnen decoderen.
Niets nieuws; er zijn al tal van decoderprogramma's te vinden maar jammer genoeg alleen maar in assembler.  Om diverse redenen ben ik afgestapt van assembler en ik wou mijn decoder in JAL.
Het protocol is vrij goed beschreven dus geen probleem om de decoder te programmeren.

Als centrale gebruik ik een IB en die heeft toch heel eigenaardige trekjes...  Bij het testen van de ruwe decoder decodeerde die soms lokdata als seindata.  Timing probleem in de software?  Negatief.  Het probleem was niet constant: vlak na het aanmelden van sommige loks kreeg ik ??nmaal de lokdata als seindata.  Zoeken, zoeken, zoeken, geen oplossing.  Het geheel wat laten bezinken en opnieuw aan de slag.

Vandaag tot de vaststelling gekomen dat dit euvel enkel gebeurt bij loks die met het 'oude' motorolaformaat aangestuurd worden.  Tijd om mijn 'geheugenscoop (http://"http://www.modelspoormagazine.be/newforum/topic.asp?TOPIC_ID=14480")' erbij te halen...

(http://www.pctoytoy.be/2012/20120311.jpg)

Wat blijkt nu: na het aanmelden op de IB van een lok volgens het oud (standaard) motorolaformaat, geeft de IB dit adres als seindata door (seindata is tweemaal zo snel dan lokdata).  Het commando wordt 2 maal herhaald (met daartussen een DCC-idle signaal - zie 1 en 2).  Dan pas wordt het adres als lokdata doorgegeven (zie 3).

Bij het inzoomen op de lokdata als seindata kwam ik tot de vaststelling dat deze seindata niet correct is doordat de vijfde trit '??n' is (voor een sein MOET deze 'nul' zijn).

Iemand een idee waarom de IB die eigenaadigheid vertoont bij het oude motorola protocol (bij het aanmelden van een lok volgens het uitgebreide/nieuwe motorola protocol gebeurt dit niet)?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 12 maart 2012, 15:07:22 pm
Volgens mij is dit wel degelijk het beeld van een MM sein data pakket.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 maart 2012, 15:04:51 pm
Stand van zaken PIC ?C S88 terugmelder met 32 ingangen.
Software moeten aanpassen om technologieproblemen op te lossen. Waar spreek ik over? Er zijn terugmelders die gebaseerd zij op CMOS logica lees:technologie (de meeste). Er zijn er ook op basis van TTL logica. Ik doe het met ?C?ers. En in die diverse technologie?n zijn er nog sub technologie?n?  Waar zit nu het probleem, als je deze technologie?n combineert dan krijg je problemen met schakelsnelheden tussen data inlezen en data op de uitgang plaatsen.  Soms lukt dat net, soms kan dit de oorzaak zijn van onverklaarbare spookmeldingen.  Dit is het voorlopige schema:

(http://users.telenet.be/RedDeBist/MBAAN/S88 terugmelder met PIC 16F887v2.png)



Ik zit nog met ??n probleem, als ik de ?C technologie gebruik zit ik nog steeds iets boven de 0.25? per terugmeldcontact (massadetectie). Een S88 terugmelder van Marklin kost iets meer dan 6,8? per terugmeldcontact.  Dat is 30 keer duurder, als je snapt wat ik bedoel.

Ik wil gewoon duidelijk maken dat het ook anders kan?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 maart 2012, 15:29:31 pm
Geert,

Dat probleem van de prijs is omdat je enkel je materiaalkost rekent: wanneer je al je tijd voor ontwikkeling, testen (ook langere tijd!) en productie begint te rekenen, zou ik goedkoper uitkomen met een Ma terugmelding (zeker voor je prototype!).  Vergeet ook de merknaam en distributie niet, die lopen ook met centen door.

Ik heb al verschillende schakelingen met PIC's aan diverse logica gehangen en daar nog geen problemen mee gehad...  S88 werkt wel op een vrij hoge clockfrequentie...


citaat:
Geplaatst door Geert

Volgens mij is dit wel degelijk het beeld van een MM sein data pakket.

Geert



Geert, dat is het juist: het is de timing van MM sein data pakket maar het adresgedeelte is het adresgedeelte van de juist aangemelde lok (in 'oud' formaat).  Het datagedeelte is 0 en trit 5 die normaal voor seindata 00 moet zijn, staat op 11...  Bizar en nergens enige uitleg over te vinden...


Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 18 maart 2012, 11:04:14 am
Seindata is wel degelijk 11. Wisseldata is 00, ik heb daar al een heel project aan gewijd om wissels aan te sturen met 00 als vijfde trits en dat lukte. Ik heb ook al eens seinen aangestuurd met de welbekende MC145027 en daar heb ik de vijfde trits positief gemaakt (11) en dit werkte ook (zie schema)

(http:// http://users.telenet.be/RedDeBist/MBAAN/MC145027 seindecoder.JPG)

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 18 maart 2012, 11:55:59 am
Geert, toch nog eens mijn bronnen geraadpleegd (oa Sven Brand http://www.digital-bahn.de/info_tech/motorola.htm en de Edits en Edits Pro boeken) en overal vind ik hetzelfde: bij sein/wisseldata (die trouwens identiek zijn) MOET trit 5 '00' zijn...  Trit 5 heeft geen enkele betekenis bij sein/wisseldata. Bij lokdata wordt trit 5 enkel gebruikt voor de richtingsafhankelijke functie F0 (zowel bij het 'oude' als bij het 'nieuwe' Motorolaformaat).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 maart 2012, 08:20:38 am
Ik denk dat we alle twee gelijk hebben. Ik weet niet hoe een IB seinen aanstuurt, bij mij is alles zelfbouw, ook de centrale. Ik stuur seinen aan  via 4 functies die ik  kan aansturen via het dubbele frequentie MM protocol (gelijkaardig als deze van de wissels) en dit volgens volgend protocol: trits 1-4 = adres, trits 5=11 en trits 6-9 is telkens een functie. Trits 6=F1 (00= off, 11=on), trits 7=F2; trits8=F3 en trits9=F4.

dit is mijn bron: http://spazioinwind.libero.it/scorzoni/motorola.htm


De methode die jij vermoedelijk gebruikt is deze via het wisselprotocol met onthoudfunctie.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 maart 2012, 21:05:51 pm
citaat:
Geplaatst door Geert

Ik denk dat we alle twee gelijk hebben...



Bij zelfbouw doe je natuurlijk wat je wil met die vijfde trit.

Een wissel activeer ik wanneer (zoals voorzien) het negende trit '11' is en deactiveer de spoel wanneer voor dat adres trit 9 terug '00' wordt (na x-tijd; in te stellen op de IB).
Bij een sein reageer ik niet op dat '00' worden en blijft het sein op de ingestelde positie tot er een andere positie/seinbeeld geselecteerd wordt.

Die link die je opgeeft is een vrij zware boterham als je die de eerste keer doorneemt.  Ik had er mij in het verleden al in verdiept en heb er nu veel interessante gegevens uitgehaald voor de gecombineerde data snelheid/richting/functies.

...


Waar staan we ondertussen: een MM protocol decoder gebouwd (schema (http://"http://www.pctoytoy.be/jal/16f88/16f88_mm_sniffer.pdf")).
Om het mezelf wat gemakkelijker te maken heb ik er een LCD en 'geheugenscoop (http://"http://www.modelspoormagazine.be/newforum/topic.asp?TOPIC_ID=14480")' aansluitingen bij voorzien.

Wat doet de decoder?  Tien seinadressen worden gedetecteerd (ik heb er 10 nodig voor mijn automatische-fiddle-yard).  Het eerste adres is instelbaar (nu nog in software - is de bedoeling dat er een leer-modus bijkomt).

Alle locdata op de baan wordt bijgehouden (loc, snelheid, richting, functietoetsen, 'oud' - 'nieuw' protocol) en opgeslagen in een array.  Wanneer er 80 loc's actief zijn, worden die allemaal netjes bijgehouden.

De data van de laatst gewijzigde lok komt op het display.

De hoofdroutine 'snift' de data die door een interruptroutine wordt aangemaakt (die interruptroutine bekijkt daadwerkelijk de data op de baan en maakt er terug 18 leesbare bits van).  Wanneer de hoofdroutine ziet dat die data slechts een herhaling is van wat hij al wist, doet hij er verder niets mee.  Nieuwe of gewijzigde data wordt opgeslagen.

Timing?  De processor werkt op 8MHz en zit het het grootste deel van de tijd lekker in zijn neus te peuteren uit verveling.  De interruptroutine neemt nauwelijks tijd in beslag en de hoofdroutine heeft enkel wat werk te verzetten bij nieuwe of gewijzigde data.

(http://www.pctoytoy.be/2012/20120317.jpg)

Een overzicht van de timing.  Bovenaan het digitale signaal op de baan en onderaan de bezettijd van de processor:
1   interrupts tijdens het 1? datapakket
2   interrupts tijdens pauze (voor faseherkenning)
1   interrupts tijdens tweede (gelijke) datapakket met op het einde een 'eventjes bezig' om de
   data te verwerken (in dit geval al gekende data).
4   interrupts tijdens DCC data (IB staat op gemengd DCC-MM signaal).
2   interrupts tijdens pauze (voor faseherkenning)
1   interrupts tijdens het 1? datapakket
2   interrupts tijdens pauze (voor faseherkenning)
1   interrupts tijdens tweede (gelijke) datapakket
5   op het einde een langere werkperiode omdat het nieuwe of gewijzigde data is.

Zoals op het tijdsdiagramma te zien is, is de PIC meestal in pauze en is dus nog ruimschoots de tijd om het programma uit te breiden.


Twee beeldjes van wat er zoal op het display verschijnt:

(http://www.pctoytoy.be/2012/20120317_1.jpg)

Loc 50 met 'nieuw' Motorolaformaat rijdt vooruit met snelheid 9.  Enkel F1 en F4 staan aan.
De backslash op het einde maakt deel uit van een 'molentje' dat draait als er data verwerkt wordt ( | / -  | / - ...).
De onderste regel toont sein 1 (of wissel 1) ingeschakeld

(http://www.pctoytoy.be/2012/20120317_2.jpg)

Loc 60 met 'oud' formaat vooruit met snelheid 7 en F0 ingeschakeld.
Sein of wissel 5 ingeschakeld.


Waarvoor moet dit gaan dienen?
In eerste instantie was dit mijn concept voor de automatische-schuif-fiddle-yard:

(http://www.pctoytoy.be/2012/tafel1.jpg)

De railsoftware (Koploper - RocRail - ...) selecteert een wisselstraat
De seindecoder reageert op ??n van de seintoestanden die vanuit railsoftware als wisselstraat wordt gestuurd en geeft een sein aan de I2C master die op zijn beurt de motorsturing aan het werk zet.  De railsoftware reageert zoals in een normale wisselstraat en stuurt de loc naar het geselecteerde spoor.  Via de S88 weet de railsoftware waar de loc zich bevindt en laat die deftig stoppen.

Nu wordt mijn plan iets ambitieuzer en wil ik de railsoftware er volledig van tussen laten.
De controller moet weten welke loc binnenkomt, die met eigen signalen 'overnemen'.  Het juiste spoor selecteren, de loc erop en alles nog doorgeven aan de eventuele railsoftware...

Ambitieus...  Nogal...  Maar met tijd en boterhammen...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 19 maart 2012, 21:14:44 pm
citaat:
Geplaatst door PeterC
Ambitieus...  Nogal...  Maar met tijd en boterhammen...
[:D] [:D]
Knap project ... en misschien ook nuttig voor anderen [8D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 maart 2012, 21:35:00 pm
citaat:
Geplaatst door Gerolf

...misschien ook nuttig voor anderen [8D]



Als er zich iemand geroepen voelt om de interruptprocedure aan te passen voor DCC (ik ben een Marklinist [:o)][:o)][:o)]), ga je gang.

De software 'gooi' ik binnenkort 'open-en-bloot' (er zitten geen geheimen in) en door ze voor mezelf te houden, ga ik niet rijker worden.  Door ze te publiceren kan ik er wel 'geestelijk' rijker van worden...

Binnenkort omdat ik nog steeds veel heiligen moet aanroepen om die tijdverslindende HTML pagina's te schrijven (nog 2 afleveringen te gaan in mijn 16F684-project...  De projecten zijn al verdwenen van mijn breadboard en binnenkort gaat de timer - het laatste project - zijn (hopelijk) deugdelijkheid bewijzen) en met slechts (ondertussen al) 1.2 armen [:)] blijft het nog wat moeilijk...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 maart 2012, 21:42:16 pm
Ik weet het even niet meer Peter. Ergens klopt er iets niet. Net als jij ben ik afhankelijk van externe bronnen en proberen wij deze info om te zetten in praktijk.

Geert

Ps: ik hoop je ooit eens te ontmoeten. Wij zijn gelijk gezindten en toevallig even oud...


update: over het mm protocol...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 maart 2012, 21:59:57 pm
citaat:
Geplaatst door Geert

...Ik weet het even niet meer Peter. Ergens klopt er iets niet. Net als jij ben ik afhankelijk van externe bronnen en proberen wij deze info om te zetten in praktijk...



Geert, dat lukt toch?  Alleen een kleine onenigheid/onwetendheid/verwarring over die vijfde trit...



citaat:
Geplaatst door Geert

...ik hoop je ooit eens te ontmoeten. Wij zijn gelijk gezinden en toevallig even oud...



Dan moeten we daar even de moeite voor doen h?!  Nog twee weken moet/mag ik mij door vrouwlief laten rondvoeren en daarna kan ik zelf (hopelijk) terug achter mijn stuur kruipen.

Schaamrood moet ik nu wel toegeven dat ik wel ??n en ander weet, maar dat ik Google Maps heb moeten raadplegen om je woonplaats te kunnen situeren [:I][:0][:I][:0][:I][:0]...  ...Geen onoverkomelijke afstand dus... [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 19 maart 2012, 23:19:22 pm
citaat:
Geplaatst door Geert


Ps: ik hoop je ooit eens te ontmoeten. Wij zijn gelijk gezindten en toevallig even oud...



Moet precies een goed productie jaar geweest zijn.
Het heeft veel doe het zelvers opgeleverd die wonderen verrichten.
Of hebben we de evolutie live meegemaakt en dat heeft ons gemaakt wat we nu zijn ?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 maart 2012, 23:39:48 pm
citaat:
Geplaatst door ToThePoint

...Of hebben we de evolutie live meegemaakt en dat heeft ons gemaakt wat we nu zijn ?



We hadden de ideale leeftijd om op de toen traag opgangkomende technologietrein te springen en mee te reizen (en mee te sturen).
Die trein rijdt nu zodanig snel dat je eerst al een heel eind moet lopen om dan nog op te stappen...  ...en in de achterste wagon beland zonder dat je daadwerkelijk afweet wat er vooraan gebeurd...

JP, join the train: Nijlen, Zwijndrecht en Deinze zijn slechts door enkele E- of N- wegen van elkaar gescheiden...  ...en jij bent toch een DCC man?

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 maart 2012, 07:47:22 am
Ik ben een fervent DCC aanhanger.
Allee het is te zeggen "loconet" waar men dcc kan uit destilleren.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 maart 2012, 14:03:54 pm
Ik loop ook al 2 jaar met het idee rond om een fiddle-yard te maken. Voor de komende twee jaar zal dat nog steeds niet lukken. De idee?n zijn er wel, maar dat uitwerken h?? Het zal wel een groots project worden en uiteraard aangestuurd met ?C. Ik ga nog niet uit de doeken doen hoe ik dat ga verwezenlijken maar het is de bedoeling dat daar geen meter spoor aan te pas komt.  Begrijp me niet verkeerd, de loks en hun wagons moeten wel ergens over rijden maar niet in de vorm van sporen zoals de meeste deze kennen. Ik heb wel al testen gedaan met enkel wagons en het werkt perfect. Nu ik dat hier begin te schrijven heb ik al zin om er al aan te beginnen.[:p]

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 maart 2012, 14:31:43 pm
citaat:
Geplaatst door PeterC

Als er zich iemand geroepen voelt om de interruptprocedure aan te passen voor DCC (ik ben een Marklinist [:o)][:o)][:o)]), ga je gang.




Ik heb al eens iets geschreven dat luisterd naar DCC, ook al ben ik een 3railer. Het is die enorme nieuwsgierigheid van mij om te weten hoe iets werkt. En dan probeer ik dat ook in praktijk uit te werken. Zo heb ik al eens een keerlusmodule programma geschreven en uitgewerkt met ?C waar ik eigenlijk als 3railer niets mee kan doen...
Wat me nu enorm bezighoud is het mfx protocol en de treinherkenning.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 maart 2012, 15:42:51 pm
citaat:
Geplaatst door Geert

Ik weet het even niet meer Peter. Ergens klopt er iets niet.




Ben even zeer diep in mijn kindertijd gedoken. De seinen toen bestonden uit relaisspoelen die net als een wissel omgezet moesten worden. Ik heb er zo nog enkele armseinen liggen. Nu begrijp ik plots hoe dat zit me de wissel/seindecoder (de k83). Ik gebruik geen spoelen meer, zeker nu met LED verlichting, en dan gebruik je de methode van de vijfde trits=11 om seinen aan te sturen.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 25 maart 2012, 11:54:02 am
citaat:
Geplaatst door ToThePoint

Ik ben een fervent DCC aanhanger.
Allee het is te zeggen "loconet" waar men dcc kan uit destilleren.



JP, over Loconet...  Ik denk dat ik daarover eens bij jou ga te rade komen...  Het heeft nog tal van 'geheimen' voor mij...




citaat:
Geplaatst door Geert

Ik loop ook al 2 jaar met het idee rond om een fiddle-yard te maken...

...maar het is de bedoeling dat daar geen meter spoor aan te pas komt.  Begrijp me niet verkeerd, de loks en hun wagons moeten wel ergens over rijden maar niet in de vorm van sporen

zoals de meeste deze kennen...



Geert, curieuzeneus die ik ben...  Je maakt mij (en vermoedelijk velen) wel nieuwsgierig...




citaat:
Geplaatst door Geert

citaat:
Geplaatst door Geert

Ik weet het even niet meer Peter. Ergens klopt er iets niet.




Ben even zeer diep in mijn kindertijd gedoken. De seinen toen bestonden uit relaisspoelen die net als een wissel omgezet moesten worden. Ik heb er zo nog enkele armseinen liggen. Nu

begrijp ik plots hoe dat zit me de wissel/seindecoder (de k83). Ik gebruik geen spoelen meer, zeker nu met LED verlichting, en dan gebruik je de methode van de vijfde trits=11 om seinen

aan te sturen.

Geert



Geert, we blijven het niet eens over trit 5.  Hierbij mijn interpretatie van het MM protocol bij sein/wisseldata:

bit1/bit2   trit1 -
bit3/bit4   trit2
bit5/bit6   trit3 vier adrestrits 0-80 (decoderadres)
bit7/bit8   trit4 -
bit9/bit10   trit5 altijd '00'
bit11/bit12   trit6 -
bit13/bit14   trit7 drie schakeladrestrits 0-7 (subadres)
bit15/bit16   trit8 -
bit17/bit18   trit9 '11' inschakelen '00' uitschakelen

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 maart 2012, 23:39:38 pm
Die vijfde trits h??

Peter, jou methode is degene die de meeste commerci?le centrales gebruiken? Vandaar dat ik hier ergens jou verward heb en mezelf ook trouwens. De methode met de vijfde trit =11 en dan trits 6-9 = on (11)/off (00) is deze die o.a. ook het welbekende MR-direct gebruikt. Ik heb deze wat vereenvoudigd zodat er geen transistors aan te pas moesten komen. De Motorola IC MC145027 kan voldoende stroom leveren (10mA per uitgang) om bij een logische ?0? of ?1? LED?s te laten oplichten.  Ik heb de werking daarvan en een eenvoudig zelfbouw strokenprintje al enkele jaren geleden uitgetipt maar nog steeds niet gepubliceerd op een forum of site. Het probleem is dat deze IC door Motorola niet meer gefabriceerd wordt.

Ik ben nu bezig met een ?C projectje dat niets te maken heeft met onze hobby.  Niet voortvertellen: een parkeerschijf  die meedraait met de tijd via een stappenmotor uit een oude printer?

Overigens die fiddle-yard is enkel geschikt voor 3 railers, bij 2 railers gaat dat niet?[}:)]

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 april 2012, 20:17:48 pm
Weer wat verder gewerkt aan mijn 32 ingangen S88 terugmelder.

Testen lopen nu op een strokenprintje. Software (asm-code) en uitleg werking volgt later via site.

Ik ben ook bezig aan een S88 terugmelder zonder ?C technologie. En dit voor terugmeldingen van drukknoppen. Uitleg volgt op een ander draadje (als ik klaar ben met de tekst en foto's...)


(http://users.telenet.be/RedDeBist/MBAAN/S88 bus met 32 ingangen met microcontroller PIC 16F887.png)


(http://users.telenet.be/RedDeBist/MBAAN/S88 bus met 32 ingangen met microcontroller PIC 16F887 print.PNG)



(http://users.telenet.be/RedDeBist/MBAAN/S88 bus met 32 ingangen met microcontroller PIC 16F887 met conectoren.png)

Oh ja,

ik zit ondertussen al aan 6,54? voor 32 terugmeldingen via deze technologie...


Geert

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 19 april 2012, 20:51:34 pm
Dit ziet er zo verraderlijk eenvoudig uit.
Veel zin om dit idee toe te passen, tegen dat ik een serieuze baan uitwerk (als je er niets op tegen hebt).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 april 2012, 20:55:17 pm
citaat:
Geplaatst door Steam.N

Dit ziet er zo verraderlijk eenvoudig uit.
Veel zin om dit idee toe te passen, tegen dat ik een serieuze baan uitwerk (als je er niets op tegen hebt).



Ik zoek nog iemand die dit printje wil uittesten met een commerci?le centrale?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 19 april 2012, 20:58:55 pm
Geert, ik moet nog naar digitaal overstappen.
Eens ik zo ver ben, geef ik je een seintje [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 april 2012, 21:00:33 pm
Geert,

Ik 'werk/speel/experimenteer' met (meerdere) IB's en Loconet [;)]
Mijn terugmeldrails hebben allemaal stekkertjes en of ik die nu in een Viessman S88 of die van jou steek...
Momenteel ben ik nog beperkt tot 8 contacten, maar hoop die tegen half volgende maand te verdrievoudigen...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 april 2012, 21:28:53 pm
citaat:
Geplaatst door Steam.N

Geert, ik moet nog naar digitaal overstappen.
Eens ik zo ver ben, geef ik je een seintje [;)]



Ben jij geen 2 railer?

Dit ontwerp werkt enkel bij massadetectie. Ik ben als 3 railer daar geen voorstander van. Immers je moet je rails doorslijpen [:(]. Ik werk ook aan een stroomdetectie-terugmelder voor zowel 2 of 3 railers via ?C technologie en ook zo eenvoudig [:)]. De 2 railers moeten nog steeds hun rails doorslijpen, de 3 railers moeten enkel de middenrail issoleren

dit voor veel later...

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 20 april 2012, 07:53:31 am
Bummer ik heb ook 2 rail. Wel heb ik 144 blokken en ga later nog moeten uitbreiden.
Deze schakeling had ik eerder moeten hebben.
Moest ik er nog nodig hebben is dit ontwerp een goede kandidaat.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 april 2012, 19:47:46 pm
De asm-code voor een S88 terugmelder voor 32 ingangen staat erop hier (http://"http://users.telenet.be/RedDeBist/MBAAN/S88 terugmelder.htm") ergens achteraan...

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 22 april 2012, 20:25:09 pm
Omdat ik met de automatisering van mijn toekomstige baan bezig ben (aan het nadenken) heb ik dit draadje even gelezen. En ik heb hierbij 1 vraag: waarom nog microcontrollers gebruiken?

En ik ben serieus. Zelf kom ik van een electronica achtergrond, dus ik snap wel waarom je dat zou willen doen, als je massaproductie wil. Maar voor een one-shot? Als ik zie wat enkele microcontrollers kosten, dan nog printen moeten maken, testen etc. Waarom niet gewoon een goedkope pc met een usb IO interface? Voor de prijs van een debugbordje heb je bijna een pc! (<100 euro voor een dual core atom) En daarmee doe je heel je baan ipv 1 klein onderdeeltje. En volgend jaar draai je gewoon dezelfde code op een ander bord ipv op zoek te moeten gaan naar een andere controller want ze maken ze niet meer.

Neen, vroeger dacht ik ook dat microcontrollers de oplossing waren. Maar nu ben ik daar niet meer zeker van.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 23 april 2012, 10:15:29 am
Johan, ik gebruik geen debugbordje, maak dingen in kleine serie op vaak heel eenvoudige printplaatjes, ...
Het voordeel van "kleine taken" door een ?C te laten doen vind ik toch een hele stap voorwaarts, zeker als analoogrijder.
Ik denk dan aan een bloksysteem, automatisch schaduwstation, wisselstraten juist leggen, een pendeltreintje, ...
Heel je baan controleren van achter je PC is niet zo mijn ding, maar als de techniek mij kan helpen om mijn (grote) baan vlot te besturen...
Een USB (of andere) I/O interface is ook niet goedkoop. Voor mij gaat het over 100 wissels (met terugmelding), 50 Blokken met stopsecties, nog eens 20 ? 30 "dummy" blokken met terugmelding,... dus al gauw 400 ? 500 lijnen...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 april 2012, 18:34:58 pm
@Geert, enkele 16F887's besteld zo kan ik je ontwerp testen op mijn IB.
Knappe website!

@Johan, PC software moet je ook nog schrijven en tijdafhankelijke toepassingen (zoals een decoder) op een PC?  Toch niet in ??n van die moderne high-level talen...  Geef mij maar een controllertje...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 april 2012, 21:11:42 pm
Nog eentje om voorlopig het ?C gebeuren af te sluiten. Ik ga wat meer tijd moeten steken op schaal 1/1. De keuken moet omgebouwd worden, anders blijft die van ons niet content?

Ooit vorig jaar op 3rail forum de uitdaging aangegaan om met een Mobiel Station 1 wissels aan te sturen. Normaal kunnen die dingen dat niet. Ik kon dat wel door een digitale wisseldecoder zodanig te programmeren in een ?C dat deze dacht dat hij een locomotief was, en kon ik met de functietoetsen wissels omzetten en dit voor 16 wissels. (er bestaat zelfs een filmpje ervan op YouTube wat verder doorscrollen)

http://forum.3rail.nl/index.php?topic=32853.0

Nu is dit ontwerp al verder uitgebreid naar andere protocollen DCC  en MM sein en wissel protocollen. Mijn uitdaging is wel het Mfx protocol er in te steken, voorlopig zonder succes.[:(]

In ieder geval kan je veel met ?C. Het onderstaande ontwerp kan 16 wissels (met spoelen) of 32 led?s voor seinen of wat dan ook aansturen via diverse protocollen. Uitgangsstroom max 500mA per uitgang (wel liefst niet tegelijkertijd)

@Peter bedankt voor je compliment

(http://users.telenet.be/RedDeBist/MBAAN/universele print met ULN2803 en PIC16F887 schema.png)

(http://users.telenet.be/RedDeBist/MBAAN/universele print met ULN2803 en PIC16F887 zonder IC.png)

(http://users.telenet.be/RedDeBist/MBAAN/universele print met ULN2803 en PIC16F887.png)

Geert



Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 23 april 2012, 22:25:12 pm
citaat:
Heel je baan controleren van achter je PC is niet zo mijn ding, maar als de techniek mij kan helpen om mijn (grote) baan vlot te besturen...
Een USB (of andere) I/O interface is ook niet goedkoop.


Wel Gerolf, een baan vanachter de pc bedienen zie ik ook niet zitten. Maar ik denk bvb aan je kermis. Je kan dan een controllertje onder elke attractie steken, en ik dacht dat je ook nog ergens een mp3 speler opgevorderd had. Nu zou je dat ook met 1 pc(tje) en interface kunnen doen. Die mp3 zit er direct mee in dan.

Zelf zou ik de usb interface niet meer laten doen dan een seri?le interface maken en al de rest met  schuifregisters doen. Als je nu met blokken zit, dan moet je nog "communicatie" doen tussen de modules. Zelfde voor een synoptisch bord in te lezen en ledjes te kleuren. Maar al de beslissingen zitten in het programma.

citaat:
@Johan, PC software moet je ook nog schrijven en tijdafhankelijke toepassingen (zoals een decoder) op een PC? Toch niet in ??n van die moderne high-level talen... Geef mij maar een controllertje...


Hangt ervan af wat je modern noemt. Maar decoders heb ik niet, enkel een bloksysteem en wat pwm drivers. Trouwens een pc die niets anders te doen heeft kan behoorlijk wat doen. Nu gaan al die microcontrollers toch meestal niets doen.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 april 2012, 22:45:24 pm
Johan,

voor enkele modelspoorders onder ons is ?C een deel van hun hobby. Dit is ook iets cre?ren dat ons voldoening schenkt. En ik deel graag wat ik ondertussen al ontdekt en geleerd heb en zelfs mijn eigen creaties met andere. Ik ben ??n en al oor (en oog) om je ervaringen met de door jou aangebrachte technologie te volgen. Ik leer graag van andere. Dus laat maar iets zien?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 23 april 2012, 22:51:34 pm
Geen probleem Geert, voor mij is het ook allemaal maar een hobby. Maar ik ben de automatisering aan het bekijken voor mijn baan. Eerste idee was ook microcontrollers. Nu denk ik eerder aan een centrale pc waar ik enkel wat IO moet bij maken. Veel is er nog niet te zien, ben nog niet verder dan handleidingen van usb interfaces aan het lezen en "programeren voor dummies"-type handleidingen op het net.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 april 2012, 08:50:44 am
citaat:
Geplaatst door Havoc
Zelf zou ik de usb interface niet meer laten doen dan een seri?le interface maken en al de rest met schuifregisters doen.
Een microcontroller kan dit ook - maar twee (goedkope) chips nodig [;)]
Onder mijn kermis zitten inderdaad meerdere ?C's, alle printplaatjes zijn afgeleid van ??n eenvoudig concept en dus snel ontworpen, en de programma's zelf zijn ook behoorlijk simpel.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 27 april 2012, 16:08:58 pm
Al iets concreter dan een denkpiste, maar toch...

Een S88 terugmelder via stroomdetectie met ?C's:

Meetprincipe is spanningsval meten over een diode die geleid met ?C. De diode kan een Si; Ge of zelfs een Schottky zijn. Deze laatste heeft een zeer lage spanningsval en dus minder spanningsverlies.

Omdat de ?C enkel positieve spanning kan meten moet de ?C weten wanneer er op het digitaal signaal voor de lok?s een positieve polariteit staat. Dus deze wordt mee digitaal gescand. Bij negatieve polariteit gaan de ?C's lekker wachten tot de volgende positieve puls.
 
De kleinste positieve puls (in lengte) die ik ken is deze van MM protocol voor wissels en seinen en is 13?s lang. Ruim voldoende voor een analoge meting  met een PIC ?C op 8MHz.
 
De PIC ?C 16F684 heeft 8 kanalen waarop deze spanningen kan meten, weliswaar niet tegelijkertijd, maar ??n na ??n. Er komen ruim voldoende positieve pulsen uit een centrale zodat er heel veel gemeten wordt per seconde door de ?C's.

De software houd ook rekening met slecht wielcontact waardoor er net even geen stroom door de diode loopt. Er zit dus ook net zoals bij massadetectie een teller en FF in die een condensator en shmitt-trigger nabootsen.

Omdat meestal gewerkt wordt met 16 terugmeldcontacten zijn er 2 ?C's aanwezig op de testprint die onderling communiceren.

Net zoals bij S88 massadetectie is deze S88 stroomdetectie niet galvanisch gescheiden van het digitale signaal voor de lok?s.
 
Als de testen meevallen dan maak ik hier een echt printje van met een S88N bus waar het digitaal signaal ook op zit. Ook kan ik het zo compacter maken dan met een strokenprintje.
 
Geert

(http://users.telenet.be/RedDeBist/MBAAN/S88/s88 terugmelder met stroomdetectie met pic 16f684.png)

voor de duidelijkheid: de dioden liggen in 2 lagen op elkaar [;)]

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 28 april 2012, 13:03:53 pm
Geert, een vlugge blik op je print doet me toch de wenkbrouwen fronsen...  Ook al 'sample' je het negatief signaal niet, de volle 'negatieve' spanning over de diode komt op je poort terecht.
PIC's zijn 'stevige beesten' maar -0.7V lijkt me toch wat veel...

Een extractie uit de datasheet:
Voltage on all other pins with respect to VSS ....... -0.3V to (VDD + 0.3V).

Ik kan er de bal volledig naast slaan hoor want ik werk enkel met 0-5V op een PIC en voor hogere (of negatieve) spanningen werk ik optisch gescheiden maar de geur van een chip die met een rookpluim afscheid neemt is niet zo lekker [}:)].

Waarom geen AC optocouplers voor de detectie?  Direct galvanisch gescheiden maar wel een (beperkte) meerkost.

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 28 april 2012, 13:48:57 pm
Als de spanning niet lager komt dan -0.7V en die weerstand in serie met de poort is hoog genoeg dan is er niet veel aan de hand.

Je mag de spanning op de pin niet lager dan -0.3V maken omdat dan de interne beveiligingsdiode in werking komt. De stroom door die diode wordt intern niet begrensd en die gaat dus snel stuk want dit zijn kleine snelle diodes voor esd, over/undershoot te beperken. Maar als je die met een weerstand tot een paar mA beperkt is er niets aan de hand.

Het is niet netjes en niet aan te raden. Dus een andere oplossing zou beter zijn.

 
citaat:
Waarom geen AC optocouplers voor de detectie? Direct galvanisch gescheiden maar wel een (beperkte) meerkost.


Spanningsval is hoger.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 28 april 2012, 18:15:15 pm
Ik begrijp jullie bezorgdheid.  In die weerstand R daar zit het hem in natuurlijk. Deze is echt nodig ook al spreken we maar over -0,7V( Si-diode). Maar ik schakel al enkele jaren met PIC's ?C met negatieve spanningen tot -18V! (MM en Mfx) Vandaar ook die R van 100k om het digitaal signaal te scannen. (net boven de ?C)

Ideaal is natuurlijk een schottky diode van 0.15V ... (maar zo duur [:(])

De nauwkeurigheid van meten is niet zo belangrijk. Die weerstand heeft ook spanningsverlies. Het belangrijkste is dat we weten dat er spanningsval over de diode, door stroom erdoorheen, is.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 02 mei 2012, 13:13:01 pm
Technisch vraagje aan de bezitters van commerci?le centrales en die iets af weten van digitale signalen die er uit komen:

Bij MR-direct  weet ik dat de S88 bus enkel communiceert met de aangesloten terugmelders  tijdens de pauzes tussen de digitale signalen naar de lok?s en functiedecoders toe. Wat ook logisch is, MR-direct kan maar ??n taak tegelijkertijd uitvoeren.

Is dit ook zo bij de commerci?le centrales?

Dit kan het programma van een ?C projectje vereenvoudigen als al de centrales zo werkte als MR-direct.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 02 mei 2012, 19:18:58 pm
citaat:
Geplaatst door Geert

...Bij MR-direct  weet ik dat de S88 bus enkel communiceert met de aangesloten terugmelders  tijdens de pauzes tussen de digitale signalen naar de lok?s en functiedecoders toe...



Geert, als je de lange pauzes tussen de verschillende pulstreinen bedoeld, moet ik je teleurstellen...  Bij Edits Pro worden er 8 klokpulsen gegenereerd tijdens te tijd dat het signaal vast is (bij een 0 of 1 is dit 156 ?s)  Tijdens die periode worden er 8 klokpulsen van 16?s gegenereerd.  Om de 32 terugmelders te kunnen uitlezen zijn er 256 klokpulsen nodig en op die manier kunnen die alle 32 gelezen worden tijdens het uitzenden van ??n enkel lokcommando.

Bij de IB is dit iets trager.  De juiste timinggegevens heb ik niet, maar dit is een meetresultaat:

(http://www.pctoytoy.be/2012/20120502_2.jpg)

Ben je hiermee geholpen?

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 02 mei 2012, 21:32:06 pm
Je antwoord kan niet duidelijker zijn Peter, bedankt. Ik ga dat programma op de PC ook eens moeten toepassen om zo digitale signalen te scannen. Dat was iets met een stripfiguur met enkele haartjes h? [;)]

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 02 mei 2012, 22:33:09 pm
citaat:
Geplaatst door Geert

...Ik ga dat programma op de PC ook eens moeten toepassen om zo digitale signalen te scannen...


Geert, voorgaande screenshot is wel van een iets professioneler toestel (Fluke 123 [;)]).
Met de geluidskaartgeheugenscoop ging het ook, maar had ik geen juiste tijdsbasis.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 04 mei 2012, 17:00:53 pm
Stroomdetectie via ?C ?voorlopig? stop gezet. Het probleem zit hem niet in de -0,7V over de Si-diode. Deze kan via een R van 1 tot 5k perfect gereduceerd worden tot een veilige lagere negatieve spanning.  Het probleem zit hem in eventuele kortsluitingen na de dioden. Zo kan er ook even +-15V ? +-18V op de ?C poorten komen, en daar kunnen ze niet tegen vrees ik. En vooraleer de kortsluitingbeveiliging van de centrale in werking treed is het al over en out voor de ?C. Ze galvanisch scheiden zoals bij de commerci?le stroomdetecties met hogere spanningsverliezen en iets complexe schakelingen was niet de opzet van dit project. Het zal voorlopig bij massadetectie blijven via ?C.[:(]


Tenzij er iemand er een oplossing voor weet.


Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 04 mei 2012, 17:15:54 pm
citaat:
Geplaatst door Geert

Het probleem zit hem in eventuele kortsluitingen na de dioden. Zo kan er ook even +-15V ? +-18V op de ?C poorten komen,
Dit snap ik even niet. Bij een kortsluiting wordt de spanning juist lager. De stroom door de dioden wordt enkele amperes, waardoor over de dioden 1,5V kan komen. Dat lijkt me nog niet desastreus.
Tenzij zo'n diode doorfikt, dan wordt het een ander verhaal.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 04 mei 2012, 17:17:11 pm
citaat:
Geplaatst door Geert

...Tenzij er iemand er een oplossing voor weet...



Geert, een simpele transistor met de diodespanning aansturen via een voorschakelweerstand?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 04 mei 2012, 17:19:51 pm
Daar heb je ook weer gelijk in Klaas. Zal het even life proberen.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 12 mei 2012, 08:54:53 am
Een denkpiste: Multifunctionele ?C programma en print lay-out op maat.

Ik zit hier redelijk wat projecten met ?C uit de doeken te doen, maar dit is eigenlijk nog maar een tussenstap. Uiteindelijk is het de bedoeling dat ik enerzijds een ?C op maat compileer aan de behoefte die ik heb op dat stuk baan. En anderzijds een print lay-out maak met aan die behoefte aangepaste in/outputs.

Dat compileren op maat is niet zo moeilijk: een degelijke compiler kan ?voorwaardelijk? compileren aan de hand van enkele parameters die je ingeeft:

praktijkvoorbeeld:

in dit station heb ik 4 wissels nodig  met terugmeldcontacten (in mijn geval servosturing)

in dit station staan  4 seinen (elk sein heeft minstens 3 uitgangen nodig)

In dit station zijn er 12 terugmeldcontacten nodig.

enz?

Ik ben wel beperkt aan 36 in/uitgangen (PIC 16F887) waarvan er al enkele gebruikt worden voor de S88 bus en voor het digitale protocol te scannen. (Of ik het S88 protocol ga blijven toepassen is twijfelachtig. ?C communiceren veel betrouwbaarder en met minder in/outputs.)

Dit was het eenvoudige deel van mijn denkpiste.

Maar voorwaardelijk, aan de hand van dezelfde behoefte, een print-lay out ?automatisch? ontwerpen is een andere zaak...

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 12 mei 2012, 11:02:09 am
citaat:
Geplaatst door Geert
Maar voorwaardelijk, aan de hand van dezelfde behoefte, een print-lay out ?automatisch? ontwerpen is een andere zaak...
Niet echt automatisch, maar een goed vectorieel tekenprogramma werkt met lagen
Je kan dan groepen componenten in een laag zetten, en die lagen kan je aan- of uitzetten bij het afdrukken [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 12 mei 2012, 12:14:34 pm
citaat:
Een denkpiste: Multifunctionele ?C programma en print lay-out op maat.


Kan je niet beter een library maken en daaruit je programma "op maat" samenstellen?

Andere oplossing is een universeel controllerprintje tekenen en dan IO printen die er met een flatcable aanhangen op maat? Of met pinnen en headers. Lijkt me veel simpelder. De dag dat je controller verandert blijven je IO printen en omgekeerd.

 
citaat:
Je kan dan groepen componenten in een laag zetten, en die lagen kan je aan- of uitzetten bij het afdrukken


Niet echt simpel als je schema en pcb aan elkaar linkt.

 
citaat:
(Of ik het S88 protocol ga blijven toepassen is twijfelachtig. ?C communiceren veel betrouwbaarder en met minder in/outputs.)


Ik snap je verwijzing naar "uC communiceren veel betrouwbaarder met minder IOs" niet. Heb dan ook geen idee hoe S88 in elkaar zit. Maar als je je eigen systeem aan het maken bent en geen S88 interface nodig hebt, dan zou ik toch overstappen naar iets dat in de controller ingebakken zit in hardware.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 12 mei 2012, 13:42:16 pm
Die S88 communicatie is nog gebaseerd op CMOS schuifregisters en daardoor vrij eenvoudig maar met een 6-draads bus (wat implementatie via software toch niet zo eenvoudig maakt).  Die bus gaat wel al 'enkele' jaren mee en is nog steeds een 'standaard interface' op de meeste centrales.

I2C die in bijna elke PIC zit (zoniet eenvoudig softwarematig te implementeren) heeft slechts een driedraadsbus nodig en is veel betrouwbaarder (error control).

Wanneer ik wil doorzetten met mijn schuiftafel/automatische-fiddle-yard voorzie ik een achttal terugmeldcontacten per spoor.  Bij tien sporen geeft dat 80 terugmeldcontacten en dat wordt dan wel wat duur met 'commerci?le' terugmelders (net ??n gekocht in aanbieding: 16 contacten voor 19.24 Euro - spotprijs!).  Ik zou een PIC(je) voorzien per spoor en het geheel via I2C laten praten.  E?n PIC is 'master' en zet die communicatie om naar de S88 bus.

Geert, een universele print met al je mogelijke toepassingen moet wel haalbaar zijn?  Conditioneel compileren is geen enkel probleem (zelfs niet in assembler).
Ik probeer zoveel mogelijk voor ieder subonderdeel van een programma (die ik ook in andere toepassingen wil gebruiken) een eigen bibliotheek van te maken (met eigen 'gestandaardiseerde' variabelen en functies/procedures) en die ik via een eenvoudige 'include' aan het programma toe voeg.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 12 mei 2012, 13:57:58 pm
citaat:
I2C die in bijna elke PIC zit (zoniet eenvoudig softwarematig te implementeren) heeft slechts een driedraadsbus nodig en is veel betrouwbaarder (error control).


Dat is niet mijn ervaring, zeker niet als je buiten het "toestel" gaat. Op verschillende ontwerpen problemen gehad met I2C die blijft hangen en enkel met power-cycle terug in orde te krijgen. Zolang je op dezelfde pcb blijft gaat het nog.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 12 mei 2012, 14:01:56 pm
Joan, ik ga er ook geen 4 meter draad aan hangen hoor!  Ik voorzie mijn ontwerp dan als een PCB van 500 * 1200 mm [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 12 mei 2012, 14:33:36 pm
Dat was geen 4m draad hoor, eerder 50cm tussen het controllerbord, displaybord en een coldjunction compensation bij een connector. Minste transient (eft of esd) en de i2c bus hing. En dat was in een metalen doos. Dus met een paar motoren in de buurt en losse printen onder een spoortafel zou ik opletten. Ander geval was vergelijkbaar: controller naar 8-tal IO printen, maar daar was er wel ongeveer 1m kabel.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 12 mei 2012, 15:45:49 pm
Is 1Wire of "gewone" seriele communicatie tussen ?C's betrouwbaarder dan I2C ?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 14 mei 2012, 09:29:13 am
@Gerolf:
1-wire is wel betrouwbaar maar wel wat moeilijker kwa opbouw.
Een eenvoudige seri?le verbinding zoals RS-485 is zeer robust zeker als je de snelheid laag houd. We hebben hier vorig jaar een verkeerslicht-set voor een kruispunt gemaakt. 1 Master met 3 slaves allemaal verbonden via RS-485 (kabel telkens +/-4m) met een snelheid van 9600bps. Je moet wel zelf een foutdetectie inbouwen dat gebeurd niet automatisch. Dit kan door bv aale bytes van een datapakket op te tellen en deze dan als extra byte mee te sturen. Zo een data pakket kan dan bv zijn (Header + Destination Addr + Data + Data +...+ Controle Byte).
Ik hoop dat het een beetje duidelijk is en anders lees ik het wel.[:D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 14 mei 2012, 09:55:32 am
Bedankt, Harald. I2C lijkt een standaard voor signalen tussen ?c's, maar hier lees ik dat die storingen kan oppikken.
Voor mezelf (later) overwoog ik ook al RS485 [;)]
citaat:
Geplaatst door PeterC
Ik voorzie mijn ontwerp dan als een PCB van 500 * 1200 mm
Dat is wel erg groot, Peter. Heb je nergens een nul teveel getikt ?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 14 mei 2012, 12:13:04 pm
@Gerolf:
Bijkomend is er ook nog dat de meeste compilers wel instructies voorzien voor een I2C master maar niet voor een slave [B)] en dat maakt het ook al weer lastiger.

Grts
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 mei 2012, 21:14:04 pm
citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door Geert
Maar voorwaardelijk, aan de hand van dezelfde behoefte, een print-lay out ?automatisch? ontwerpen is een andere zaak...
Niet echt automatisch, maar een goed vectorieel tekenprogramma werkt met lagen
Je kan dan groepen componenten in een laag zetten, en die lagen kan je aan- of uitzetten bij het afdrukken [;)]



Hoe langer hoe meer ik over deze oplossing denk, is dit dewelke het meeste kans maakt.
Het wordt tijd dat ik Autocad nog eens bovenhaal. (<-- lees download...)

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 14 mei 2012, 21:59:41 pm
Autocad???? Gebruik toch een echt pcb tekenpakket.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 mei 2012, 22:01:33 pm
citaat:
Geplaatst door Havoc

Autocad???? Gebruik toch een echt pcb tekenpakket.



Omdad ik A-cad redelijk goe ken...


Geert

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 14 mei 2012, 22:45:27 pm
Ja, maar een pcb pakket laat je wel toe om te controleren of je pcb klopt met het schema.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 mei 2012, 22:49:03 pm
citaat:
Geplaatst door Havoc

Ja, maar een pcb pakket laat je wel toe om te controleren of je pcb klopt met het schema.



Welk pcb pakket raad je me aan?

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 mei 2012, 10:28:36 am
Geert,
Ik werk persoonlijk met Eagle en niet zo moeilijk aan te leren.  Heel veel mogelijkheden om met lagen te werken en delen te 'automatiseren'.

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 mei 2012, 11:06:45 am
Eagle heb ik ergens op de schijf staan. Al eens bekeken maar nog niets concreet mee gedaan. We zullen daar ook eens werk van moeten maken.

Wat die communicatie betreft, ik werk (of probeer tenminste) met 1 lijn verbinding tussen ?C. De afstand is wel beperkt tot enkel cm.

E?n ?C is master, de ander slave. Ik schakel zelf de TRIS register van de poort van in- naar output en andersom. De synchronisatie is via interrupts. En de onderlinge verbinding tussen de poorten is beveiligd met een weerstand.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 mei 2012, 19:39:39 pm
citaat:
Geplaatst door Gerolf

citaat:
Geplaatst door PeterC
Ik voorzie mijn ontwerp dan als een PCB van 500 * 1200 mm
Dat is wel erg groot, Peter. Heb je nergens een nul teveel getikt ?



Geen nul teveel getikt, alleen [:D][:D][:D] vergeten dat het als grap bedoeld was [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 mei 2012, 20:41:34 pm
Grote problemen met I2C heb ik nog niet ondervonden maar mijn 'kabellengtes' zijn steeds beperkt gebleven tot enkele tientallen centimeters...

Een ander alternatief dat ik zie is seri?ele data (op 5 volt) tussen verschillende PIC's.  Eentje is dan wel 'master' en geeft via een afzonderlijke communicatielijn aan elke 'slave' te kennen dat hij met die 'slave' wil communiceren (zit ook in elke PIC als hardware).  De 'slaves' die niet actief zijn, zetten hun poorten op 'input' zodat ze de lijnen niet be?nvloeden...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 16 mei 2012, 00:38:43 am
@Geert:
Voor egale 4.16 (kan ook nog gebruikt worden voor 5.x) heb ik nog een cursus liggen in PDF stuur me maar een PM en ik bezorg hem.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 29 mei 2012, 12:03:32 pm
Voor m'n eigen bus-systeem gebruik ik gewoon seri?le communicatie op 19200 baud.
Dit stuur ik met alle gemak over netwerkkabels van 20 meter, zonder enige storing. (zelfs als die netwerkkabel naast 230V stroomvoerende kabel of naast een ringleiding met een digitaal signaal ligt)

Ik gebruik een doorlus-mechanisme. data gaat van print naar print. Dit klinkt "tijdsvertragend", maar uiteindelijk heb je maar een paar millisecondes nodig om een signaal van 10 bytes, door meer dan 30 kaarten te sturen. en ??nmaal een signaal bij de 2de kaart zit, kan je al terug van de eerste kaart beginnen sturen.
(beetje principe van SPI-cascading, maar dan met gewoon seri?le signalen)

Als een kaart data binnen krijgt, kijkt de kaart of het doel-adres overeen stemt met z'n eigen adres. Zoja, dan doet hij wat met die data. Zelfs als de data voor de kaart bestemd is, stuurt hij die data toch nog verder de bus op, zodoende kan je meerdere kaarten met hetzelfde adres gebruiken binnen het bus-systeem, die dan hetzelfde reageren ...


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 30 mei 2012, 08:38:22 am
Dat klinkt niet slecht, Kris.
Dit is dan een systeem met ??n master en verschillende slaves, niet?
Of kunnen de slaves ook zelf informatie rondsturen?
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 31 mei 2012, 00:15:30 am
Of Kris dit toepast weet ik niet maar op het bedrijf waar ik werk hebben wij dit al meerdere malen toegepast. Voor ??n klant dergelijk systeem toegepast tot 256 nodes met plastic fiber verbinding tussen de nodes. Elke node kon zijn eigen bericht mee tussen de datastroom geven. Was ??n groot ringnetwerk. Nadeel is wel dat in een systeem waar paketten tussengevoegd kunnen worden de paketten elkaar als het ware kunnen ophouden waardoor de nodes behoorlijk wat moeten kunnen bufferen. Probleem wordt erger naargelang de node verder naar achter in de ketting zit.
In een andere toepassing gebruikten we RS422 communicatie op 115Kbaud.

mvg,

Patrick Smout
Al bij al een mooi systeem.

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 12 juni 2012, 11:54:00 am
Het idee van ??n master met een heleboel slaves, is de basis-gedachte, maar is het toch niet helemaal :-)

Wat Patrick beschrijft, is inderdaad meer correct, het gaat hier over een ring-systeem. (maar niet over fiber, ik gebruik gewoon netwerkkabels om de boel te verbinden, LET OP, dit kan je niet "mengen" met een gewoon netwerk, alleen de ethernet-module kan je aan een echt netwerk hangen)
de "master" stuurt data de bus op, en die raakt uiteindelijk helemaal "rond", totdat die data terug bij de master komt. Dit is alleen om zaken aan te sturen, op basis van beslissingen die de "master" neemt, er zit niks van polling op.
Een kaart waar sensors aan hangen, stuurt gewoon op zijn beurt, data de bus op, die uiteindelijk bij de master terecht komt.
Zodoende werkt dit "event-driven" en niet via "polling".
De bus zou kunnen "opstroppen", waar in praktijk gebeurt dit nooit.
De buffers op ??n print zijn net groot genoeg om ??n volledig pakket bij te houden. Als die buffer vol is, kan de voorgaande kaart z'n data niet verder sturen, zodoende houdt elke kaart gewoon ??n pakket bij, en stromen die netjes terug door, als zo'n sensor-kaart klaar is met verzenden.

In principe kan ??n keten bij mij ook max. 256 nodes bevatten, maar ??n keten zit met een ethernet-moduletje aan m'n thuis-netwerk.
In principe kan ik "ongelimiteerd" (nu ja, afhankelijk van IP-ranges enzo), meerdere van die ketens op m'n netwerk koppelen.
Zo heb ik ??n keten voor m'n hobbykamers, ??n keten voor de rest van't huis, en ??n keten voor de tuin.

Ondertussen blijven de verschillende types kaarten die ik op die bus kan steken, uitbreiden. Zo heb ik zelfs al een module om seri?le en I2C data van de ene kant van het huis, naar de andere kant te sturen. (gewoon een kaart waar je een adres naartoe stuurt, en een boel data, die gaat de bus op, en komt op de kaart met het adres, er terug uit in het originele formaat)
Ook heb ik ondertussen kaarten om een stuk van de keten "draadloos" te maken met transceivers enzo ...

Binnenkort ga ik speciaal een sectie wijden aan dit hele gedoe, op m'n eigen site, dan zet ik ook ineens alle sourcecode, schema's, PCB's en hex-files online. (momenteel stuur ik h??l de boel aan, met ??n android device trouwens, ook met zelfgeschreven software, hier staat al een artikel van op m'n site)


groeten,
Kris
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 21 juni 2012, 20:19:35 pm
Ik was het een beetje beu om de diverse ?C-testen uit te voeren met een vaste 5V voeding, functiegenerator enz... . Ik heb dan maar op een testboard een vaste 5V voeding (7805) en pulsgenarator (NE555) geplaats. Als transfo heb ik een afgedankte GSM oplader gebruikt (6V= 800mA). Nu ben ik meer mobiel [;)]

(http://users.telenet.be/RedDeBist/MBAAN/handig om microcontrolers te testen.JPG)

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 27 juni 2012, 21:22:31 pm
Deze maand in Elektor een aankondiging dat er in het septembernummer een autonome treinbesturing met een PIC gaat verschijnen (via PC te automatiseren met scripts).  Of het analoog of digitaal gaat worden, staat er niet bij...
Ben wel benieuwd!
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 27 juni 2012, 21:24:35 pm
Bedankt voor de tip.

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 27 juni 2012, 21:28:43 pm
Geert, de aankondigingen kloppen wel niet altijd en kunnen door omstandigheden soms enkele nummers later gepubliceerd worden.  Eind augustus (als ik mijn septembernummer krijg) weet ik meer te vertellen [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 28 juni 2012, 15:03:35 pm
Voor de liefhebbers: een vrij eenvoudig programma voor een lichtreclame, geschreven in Bascom-AVR voor een Atmega8 ...
http://www.meb.gerolf.be/scenery/bm/kermis/railway/k/74lichtnaam.txt
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 28 juni 2012, 17:11:54 pm
citaat:
Geplaatst door Gerolf

Voor de liefhebbers: een vrij eenvoudig programma voor een lichtreclame, geschreven in Bascom-AVR voor een Atmega8 ...
http://www.meb.gerolf.be/scenery/bm/kermis/railway/k/74lichtnaam.txt



Amaai, das even totaal iets anders dan C-taal of PIC-taal...

Geert

PS: voor PeterC: ik ben ook begonnen in JAL-taal[;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 28 juni 2012, 17:33:46 pm
citaat:
Geplaatst door Geert
Amaai, das even totaal iets anders dan C-taal of PIC-taal...
Ik hoop dat je "eenvoudiger" bedoeld [;)]
't Is een variant van Basic, het eigenlijke programma telt amper 30 lijnen, al de rest is data (840 lijnen, ongeveer 5000 getallen)
Om al die data niet "met de hand" te moeten uitrekenen heb ik Excel gebruikt [8D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 28 juni 2012, 17:38:32 pm
Ik ben wel onder de indruk van deze taal. Maar iets dat op enkele ?s moet reageren zal niet lukken vrees ik...

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 28 juni 2012, 17:42:09 pm
Het is mogelijk om er assembler bij in te stoppen, maar dat heb ik nog niet geprobeerd (nog niet nodig gehad)
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 28 juni 2012, 20:49:34 pm
@Gerolf: Bascom-AVR wat moet ik mij daarbij voorstellen?  Is dat een Atmega met een Basic-interpreter ingebakken die je programma (zoals destijds bij Basic) interpreteert (lijn per lijn uitvoert)?  Of is daar ook ontwikkelingssoftware bij die je progje compileert naar machinecode voor die Atmega?

@Geert: het verschil in 'ontwikkelingssnelheid' al ondervonden tussen JAL en assembler?  Niet dat ik een groot licht ben, maar bij eventuele problemen heb je mijn mailadres [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 29 juni 2012, 01:36:49 am
Bascom compileert (maakt dus machinetaal) [;)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 29 juni 2012, 06:49:35 am
citaat:
Geplaatst door Gerolf

't Is een variant van Basic, het eigenlijke programma telt amper 30 lijnen, al de rest is data (840 lijnen, ongeveer 5000 getallen)


Een data driven design dus, de correcte manier om zoiets te implementeren (en dat staat los van de programmeertaal).

mvg,

Patrick
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ysbeer op 30 juni 2012, 15:05:54 pm
Ik heb mij nog niet zo bezig gehouden met dit onderwerp,maar ik wil nu geluid op de baan (analoog).
Dus zoeken.

Heeft iemand ervaring met dit of gelijkwaardige zaken.

http://elm-chan.org/works/sd20p/report.html

wim
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 30 juni 2012, 19:27:53 pm
citaat:
Geplaatst door ysbeer

Ik heb mij nog niet zo bezig gehouden met dit onderwerp,maar ik wil nu geluid op de baan (analoog).
Dus zoeken.

Heeft iemand ervaring met dit of gelijkwaardige zaken.

http://elm-chan.org/works/sd20p/report.html

wim



Er bestaat een gratis discotheek programma met de naam jump.
Volgens mij heb ik dat al eerder aangegeven hier[?] Of ergens anders op dit forum.
Je kan 10 audio files afspelen (desgewenst tegelijk) door gewoon op je nummertoetsen te drukken. Het lijkt me een kleine moeite ervoor te zorgen dat je keybord commands overgenomen worden door een externe trigger?
De audio files kan je naar believen opnemen, en dus mengen naar believen.

(als ik de link terugvind zal ik het plaatsen)
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 26 juli 2012, 20:49:27 pm
Al een tijdje zit ik met de gedachte om een I2C signaalgever/sniffer te ontwerpen die de I2C signalen omzet in een seri?el signaal om via USB naar een terminalprogramma op de PC met I2C bouwstenen te kunnen communiceren (zonder een ingewikkelde testomgeving te bouwen) en om 'onbekende' I2C signalen te kunnen 'hacken' (oa de I2C communicatie tussen een IB en keyboard 6040 - om die zelf te kunnen maken).

Heel wat opzoek- en denkwerk verricht.  Al begonnen met de implemantatie tot ik vorige week de vraag kreeg om een toestel met SPI communicatie 'eens te onderzoeken'...  Van SPI ken ik (nog) geen bal van en ik had geen zin om heel veel tijd te steken in het ontwerpen van een SPI 'sniffer'...

Google aan het werk gezet en al mijn verwachtingen/noodzakelijkheden gevonden in een project van Dangerous Prototypes: de Bus Pirate.

Alles wat ik nodig heb: I2C/SPI (en nog enkele andere protocols) aansturen met eenvoudige commando's vanuit een terminalprogramma en ook een I2C/SPI... 'sniffer/analyser'.

De "Bus Pirate':

(http://dangerousprototypes.com/docs/images/3/32/BusPirate-v3.5-W490.jpg)
(afbeelding van Dangerous Prototypes (http://"http://dangerousprototypes.com/"))

Als terminal heb ik mij Termite (http://"http://www.compuphase.com/software_termite.htm") aangeschaft.  Heel gemakkelijk om mee te werken en heel wat opties.

Via de Open Logic Sniffer (http://"http://www.lxtreme.nl/ols/") eens een testje gedaan met een bestaande I2C schakeling:

(http://www.pctoytoy.be/2012/20120726_1.jpg)

en je krijgt direct een analyse van de verzonden/ontvangen data.

Heel wat werk uitgespaard om geen 'warm water' uit te vinden.  En voor de prijs kon ik het niet laten...
Vorige zondag besteld en woensdag reeds geleverd...
De soft is Freeware en/of Open Source.

Een aanrader voor wie met verschillende bussystemen wil experimenteren!

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 26 juli 2012, 21:37:09 pm
Lijkt best interessant, Peter [8D] en misschien voor mij iets voor later [:p]
Momenteel ook met microcontrollers bezig: kermis-software schrijven (en debuggen) [:I]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 26 juli 2012, 21:50:56 pm
Gerolf, ik ben het even kwijt met welk ?C type jij werkt maar de 'Bus Pirate' is ook inzetbaar als Atmel AVR programmer (niet mijn ding - ??n type ?C (PIC) is al wat mijn verstand nog aan kan [;)]).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 26 juli 2012, 22:28:16 pm
Ook voor AVR's? Nog interessanter [:p] (AtMega8 vooral momenteel)
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 27 juli 2012, 17:06:35 pm
Heel interessant Peter. Dit zet ik bij mijn To-Do lijst. Ik hoop nog enkele honderden jaren te leven want mijn To-Do lijst begint aardig aan te dikken.[:D]

So wat, nu even bezig met het rijden van mijn treintjes. Dit was al een tijdje (jaartjes) geleden. Vanaf september begin in weer met ?C projecten?


Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 29 juli 2012, 21:10:12 pm
Nu ik toch eens serieus met servo's wil beginnen (oa voor een op stapel staand project: een segmentdraaischijf), heb ik toch wel de behoefte om servo's te testen.  Een servotester die ik begin dit jaar had ontworpen, heb ik laten vallen nadat ik eens 'deftig' de output gemeten had.  Goede meetapparatuur geeft goede resultaten en de meetresultaten van mijn ontwerp waren alles behalve...

Redo from scratch...  Met als uitgangspunt een goede tijdsbasis: 50 Hz herhalingsfequentie (20 ms) en een puls van 1ms (links) over 1.5 ms (neutraal) tot 2 ms (rechts).
Enkele meetresultaten tot dusver:

(http://www.pctoytoy.be/2012/50Hz-1ms.jpg)(http://www.pctoytoy.be/2012/50Hz-1.5ms.jpg)(http://www.pctoytoy.be/2012/50Hz-2ms.jpg)

De eerste stappen zijn gezet...  ...wordt vervolgd...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 29 juli 2012, 21:20:35 pm
Waarbij opgemerkt dat de herhalingsfrequentie helemaal niet zo kritisch is. Die mag best een beetje "zwabberen", als hij maar in de buurt van 50Hz ligt.
De stabiliteit van de pulsduur is veel belangrijker.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 29 juli 2012, 21:41:56 pm
Klaas, de herhalingsfrequentie is 49,99 Hz (zonder kristal op de processor toch vrij nauwkeurig met kistal 4MHz! - verwarrend: 3 PIC projecten gelijkertijd op mijn breadboard [^]) en de pulsduur is tot op 1 ?s in te stellen: 1 ms geeft 1000 (+/-1)?s, 2 ms geeft 2000 (+/-1)?s. Dit volgens berekeningen en de meetresultaten (Fluke).

Het huidig programma is heel eenvoudig: opstarten geeft 1.5 ms (neutraal), na 1 seconde gaat de servo naar links (rechts?) bij 1.0 ms pulsduur, gevolgd door 1.5 ms (neutraal - terug na ??n seconde) en dan naar 2ms (rechts).  Daarna in een loop naar links - neutraal - rechts - neutraal - links...

Enkele eenvoudige testen laten al het verschil zien tussen een servo (kleine 's') en een Servo (grote 'S')!  Conradjes van enkele Eurootjes ratelen en schreeuwen tijdens de test.  Oer-oude-Robbe/Graupner-servo's (prijs=Conrad*20) doen het veel rustiger en stiller...
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 29 juli 2012, 22:16:11 pm
Peter, ik zie ook dat de herhalingsfrequentie 49,99 Hz is. En die is zo mooi stabiel omdat die is afgeleid uit de kristalfrquentie.
Maar in je vorige bijdrage wekte je, althans voor mij, de indruk dat de nauwkeurigheid van de herhalingsfrequentie belangrijk is. En daar reageerde ik op door te stellen dat die er weinig toe doet.
Je zou zelfs de opvolgingstijd voor de pulsen kunnen vari?ren, b.v. achtereenvolgens 18, 20, 19 en 21 ms maken.
Je zal zien dat de servo daar geen last van heeft. In de servo zit nl. niets wat die opvolgingstijd controleert. De servo kijkt alleen naar de lengte van de puls, en verwacht na enige tijd een "opfrisser". Maar hoe lang "enige tijd" is, dat is niet kritisch.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 30 juli 2012, 17:29:19 pm
klinkt zeer interessant weer een stukje bijgeleerd zie [:)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 30 juli 2012, 18:27:58 pm
citaat:
Al een tijdje zit ik met de gedachte om een I2C signaalgever/sniffer te ontwerpen die de I2C signalen omzet in een seri?el signaal om via USB naar een terminalprogramma op de PC met I2C bouwstenen te kunnen communiceren (zonder een ingewikkelde testomgeving te bouwen) en om 'onbekende' I2C signalen te kunnen 'hacken' (oa de I2C communicatie tussen een IB en keyboard 6040 - om die zelf te kunnen maken).


Dit is een handig en goedkoop ding dat we op het vorige werk daarvoor soms gebruikten: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en028600
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 30 juli 2012, 22:24:41 pm
Een 'spielerei' (http://"http://www.pctoytoy.be/2012/8x8_red_green_matrix.pdf") gekocht maar ik heb geen idee hoe ik er moet aan beginnen...
Ik zou twee van die matrixen achter elkaar willen zetten.  Volgens mijn bescheiden mening kom ik dan op 40 poorten (8rood + 8groen + 8rood + 8groen + 8common) die ik moet aansturen???  Zal wel eenvoudiger kunnen zeker?
Ik wil zoveel mogelijk vanuit een controller gaan sturen, dus zeker geen gebruik gaan maken van 4 naar 16 multiplexers.  Voor de common wil ik eventueel nog een 3 naar 8 mux inzetten (via schakeltransistoren).

De eerste versie van de servotester is af.  Nu nog de HTML pagina's maken [xx(]

[Edit]: Voor wie 'spielereien' of degelijk materiaal zoekt: http://www.watterott.com/ (geen reclame - ik plaats de link enkel omdat er nogal wat 'speciallekes' in hun aanbod zitten).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 juli 2012, 13:09:00 pm
citaat:
Geplaatst door Klaas Zondervan

...De servo kijkt alleen naar de lengte van de puls, en verwacht na enige tijd een "opfrisser"...


Ja en nu ondervonden dat die vrij kritisch naar die puls kijkt. Een variatie van slechts 2?s in de puls en de servo staat reeds te 'jitteren'.  Vooral 'goedkopere' servo's hebben er last van.  De afwijking in de pulslengte was het gevolg van luiheid: een ontkoppelcondensator van 100nF over de spanningslijnen van de controller doen wonderen [^].
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 juli 2012, 13:10:55 pm
citaat:
Geplaatst door Havoc

Dit is een handig en goedkoop ding dat we op het vorige werk daarvoor soms gebruikten: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en028600


Johan, zo te zien doet de 'Bus Pirate' net hetzelfde (en nog enkele extra zaken) maar is de prijs ervan minder dan de helft dan die van Microchip.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 31 juli 2012, 19:26:59 pm
citaat:
Ik zou twee van die matrixen achter elkaar willen zetten. Volgens mijn bescheiden mening kom ik dan op 40 poorten (8rood + 8groen + 8rood + 8groen + 8common) die ik moet aansturen??? Zal wel eenvoudiger kunnen zeker?


Hoeft niet, je kan toch de rood en groen van beiden samen nemen. Dan heb je 8 rood, 8 groen en 16 common. Je zou ook nog kunnen rood en groen multiplexen, dan heb je 8 r/g + select en 16 common. Die 16 common zouden via een shuifregister kunnen. Die andere ook, hangt wat af van hoeveel io je hebt/wil/kan gebruiken.

Klopt van die bus pirate, maar de microchip hadden we liggen in de kast.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 juli 2012, 20:57:54 pm
citaat:
Geplaatst door Havoc

citaat:
Ik zou twee van die matrixen achter elkaar willen zetten. Volgens mijn bescheiden mening kom ik dan op 40 poorten (8rood + 8groen + 8rood + 8groen + 8common) die ik moet aansturen??? Zal wel eenvoudiger kunnen zeker?


Hoeft niet, je kan toch de rood en groen van beiden samen nemen. Dan heb je 8 rood, 8 groen en 16 common. Je zou ook nog kunnen rood en groen multiplexen, dan heb je 8 r/g + select en 16 common. Die 16 common zouden via een shuifregister kunnen. Die andere ook, hangt wat af van hoeveel io je hebt/wil/kan gebruiken...



Ik heb wat in een ver verleden zitten zoeken toen er nog busbuffers bestonden.  Een 74241 (niet-inverterende-buffer) is 8 bit en heeft een output-enable.  Zo vier stuks parallel en ik kan de anodes al aansturen (8 bits data + 4 stuurlijnen).  Voor de kathodes zal ik wel een darlington-array moeten gebruiken (er kunnen 8 leds gelijkertijd branden = 160 mA - een inverterende array kan ik positief aansturen).

Nu vraag ik mij af met dergelijke schakeling: de led zal slechts 1/32? van de tijd oplichten(4 * 8 kolommen, 8 rijen).  Ga ik dan nog genoeg lichtopbrengst hebben (het is de bedoeling om er glasvezels voor te zetten voor een 'spielerei').  Geven rood en groen gemultiplexed nog effectief geel?  Wat is de 'ideale' minimum tijd dat een gemuiltiplexte led nodig heeft om het goed te doen?

Met datgene dat ik nu voor ogen heb, heb ik 2 * 8 bits poorten nodig + 4 voor de buffers aan te sturen + communicatielijnen.  Ik denk dat ik dan al beter een 40 pins PIC neem en een 8 bits poort extra inzet.  Heeft als voordeel dat de led 2 maal zo lang kan branden.

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 31 juli 2012, 21:23:43 pm
Kan je niet beter iets met een latch gebruiken? Bvb een 74hc595 (8 bit shift met latch) of 74hc574 (8 bit latch)? Een HC gaat ook maar 24mA driven trouwens. Misschien beter demultiplexing en driven scheiden? Anders moet je naar iets als een ABT gaan die 64mA aankan.

Voor de lichtopbrengst kan je de stroom opdrijven. Gepulst kunnen leds heel wat meer verdragen dan DC. Alhoewel je datasheet er niet veel over zegt buiten max 30 mA piek bij 1/10 dutycycle en 10 kHz. Jij zit bij 1/32, maar welke frequentie ga je halen? (en als er iets mis gaat ga je snel moeten zijn!)

De inkoppeling in vezels gaat ook nog verlies geven.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 juli 2012, 23:00:20 pm
citaat:
Geplaatst door Havoc

...De inkoppeling in vezels gaat ook nog verlies geven...



En het zijn dan nog van die 'plastieken vezels', gerecycleerd van zo'n - hoe noem je dat - wonderlamp [:)] waar een stevige halogeenspot met kleurschijf voor de 'wonder' verlichting zorgt...

Die 10 KHz lijkt me wel haalbaar (20 MHz klok; ??n instructie per 1/4 klok).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 01 augustus 2012, 18:15:14 pm
Die plastieken vezels zijn nog geen ramp, maar de koppeling met de led gaat lastig zijn. Als je er geen meters van gebruikt. Er is hier al ergens in een draadje over gediscussieerd. En een goede uitlijning is toch wel het minste. Met zo'n array is dat lastiger dan met 1 led.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 02 augustus 2012, 09:34:18 am
Een dutycycle van 1/32 is te weinig, Peter. Heb ik al ondervonden [:I] Te weinig lichtopbrengst ...
Ik denk dat het beter is om je microcontroller delen van je matrix tegelijk te laten aansturen.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 02 augustus 2012, 12:39:04 pm
citaat:
Geplaatst door Gerolf

Een dutycycle van 1/32 is te weinig, Peter. Heb ik al ondervonden [:I] Te weinig lichtopbrengst ...
Ik denk dat het beter is om je microcontroller delen van je matrix tegelijk te laten aansturen.



Met een ULN 2803a kan ik 500mA aansturen (= 16 leds op (kortstondig!) 30mA).  Dat worden dus al 2 darlingtonbuffers voor de 32 leds in een rij.  De rijen aansturen via een 74xx374 kan 'slechts' 20 mA per pin 'sourcen'.  4 latches voor telkens 8 leds.  De rijaansluitingen op dezelfde datalijnen als de kolomaansturing betekent dit nog 8 + 4 latchenables + 2 rijenable = 14 bits!  Zelfs een heel keine PIC kan dit aan.  Een dutycycle van 1/8 (minus de aansturing van de latches en de busbuffers - minder kan ik niet).  Wel heel wat externe hardware...

Het (spieler)ei moet verder broeden...

Ondertussen dergelijke modules met RGB gevonden...  8 bits per module extra... [xx(]

citaat:
Geplaatst door Havoc

Die plastieken vezels zijn nog geen ramp, maar de koppeling met de led gaat lastig zijn. Als je er geen meters van gebruikt. Er is hier al ergens in een draadje over gediscussieerd. En een goede uitlijning is toch wel het minste. Met zo'n array is dat lastiger dan met 1 led.



Enig idee welk draadje?  De uitlijning kan ik (CNC) laten doen.  De fiberkes zelf zouden in een heel kleine matrix moeten ondergebracht worden en 128 gaatjes perfect uitgelijnd boren...  Daarvoor heb ik het materiaal niet (wel de nodige vrienden die dat materiaal in huis hebben [;)]).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 05 augustus 2012, 11:02:25 am
citaat:


Met een ULN 2803a kan ik 500mA aansturen (= 16 leds op (kortstondig!) 30mA).  Dat worden dus al 2 darlingtonbuffers voor de 32 leds in een rij.  De rijen aansturen via een 74xx374 kan 'slechts' 20 mA per pin 'sourcen'.  4 latches voor telkens 8 leds.  .... Wel heel wat externe hardware...




Bekijk de TLC5916 (of variant) eens. Ook verkrijgbaar via ondermeer mouser in PDIP. Volgens mij is dit wat je nodig hebt. [;)]

http://nl.mouser.com/Search/Refine.aspx?Keyword=TLC5916

mvg,

Patrick Smout
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 05 augustus 2012, 12:14:49 pm
74ABT374 of 74ABT574 kan 64mA aan. LMD18400 High side driver geeft 1A en fully protected. Vroeger was er de ULN2903 maar die blijkt niet meer te vinden.
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 05 augustus 2012, 14:25:52 pm
Mannen, bedankt om te helpen denken/zoeken!  Over de 'spielerei' ga ik verder denken...   Eerst de prioriteiten: de servotester is zo goed als af.  Opstarten: servo gaat neutraal.  Druk op de knop: servo gaat van neutraal naar volledig links, neutraal, volledig rechts enz...  Druk op de knop: servo is instelbaar via potmeter.

filmpje (http://"http://www.pctoytoy.be/2012/servotester.mp4")
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 augustus 2012, 17:24:12 pm
Knap gedaan, Peter [8D]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 augustus 2012, 18:42:58 pm
Knap, Peter.
Een van de dagen kom ik eens aankloppen [;)]
Lijkt me een stuk van de oplossing voor mijn scrap yard kraan  [:)][:)][:)]
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 augustus 2012, 10:21:07 am
citaat:
Geplaatst door Steam.N

...Een van de dagen kom ik eens aankloppen [;)]...



Altijd welkom!

Niet zo bijster weer vandaag.  Misschien eens de (o zo hatelijke) HTML pagina's schrijven [xx(] - Maar ja, het is voor het goede doel (en ook voor mezelf zodat ik volgend jaar nog weet hoe alles in elkaar zat [^]).
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 06 augustus 2012, 21:10:41 pm
citaat:
Geplaatst door PeterC

... Maar ja, het is voor het goede doel ...

Inderdaad (voor wat je een "goed" doel beschouwt, natuurlijk [:D][:D][:D])
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 augustus 2012, 20:56:21 pm
De uitleg van de servotester toegevoegd aan mijn 16F684-projectje (http://"http://www.pctoytoy.be/jal/16f684/16f684_7.htm").  Nu enkel nog de timer als afsluiter erbij zetten en dit projectje sluit ik af.

Volgend controller project: een Marklin-Motorola-Decoder in geuren en kleuren (en in JAL) uitleggen...

Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 09 augustus 2012, 11:39:38 am
Ziet er goed uit Peter. Het geeft toch telkens weer een kik als je zelf geschreven software en de bijbehorende hardware werkt zoals je had gehoopt.

Die MM decoder in JAL daar ben ik wel eens naar benieuwd.

In Elektor heeft ooit eens een artikel gestaan om rijtuigverlichting aan te sturen met een ?C via MM protocol met dimfunctie via PWM. Uitleg, PCB en ASM-code kan je gratis downloaden via hun site. Je hoeft je enkel te registreren en dan krijg je 10 credits.   Met deze credits kan je het artikel downloaden.

http://www.elektor.nl/artikelen-als-pdf/2009/februari/modelrijtuig-verlichtingsdecoder.811018.lynkx

Geert
Titel: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 augustus 2012, 15:32:59 pm
Geert, dat poject in Elektor heb ik destijds zien passeren maar ik kon me niet meer herinneren waarom ik er niet meer aandacht aan besteed had.  Nu bij het downloaden, is mijn frank gevallen: het was wegens die verhelderende commentaren in de source code [:D][:D][:D]

De JAL MM decoder werkt reeds (zowel voor wissel als voor loco commando's - oud en nieuw formaat) alleen de polariteitsafhankelijkheid staat nog niet op punt.  Maar dat is voor na het verlof.  Eerst een weekendje Hoge Venen met de zoon en dan nog een weekje met gans het gezin naar...  ...Dat zien we nog wel!

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 november 2012, 12:44:58 pm
Uit pure noodzaak enkele wisseldecoders gebouwd.

Uit pure noodzaak: een Viessmann decoder had het laten afweten op één uitgang (had in feite nooit gewerkt).  Na onderzoek bleek de stabilisatie-elco ontploft te zijn en een drivertransistor had ook de geest gegeven.  De decoder ooit een tweedehands gekocht en nooit getest...  De vorige eigenaar had blijkbaar wisselspanning rechtstreeks op de uitgangen gezet...  Geen nood, herstelbaar, ware het niet dat ik net die elco en transistor niet heb liggen.  Een bestelling voor twee componentjes is te gek voor woorden en een electronicawinkel in de buurt is er niet.

Tijdens mijn speurtocht naar die twee componentjes toch een hele boel ander materiaal teruggevonden.  Genoeg materiaal voor enkele zelfbouw wisseldecoders.

De schema's en de sturingen van Sven Brandt (http://www.digital-bahn.de/bau_weiche/weichzwei.htm) had ik in het verleden al eens getest en werkten naar behoren.  Een printontwerp om de zaak met discrete componenten te bouwen was er echter nog niet van gekomen (en komt er voermoedelijk niet meer van).  SMD's zijn niet mijn ding.

Een printje?  Dan maar op strokenprint:

(http://www.pctoytoy.be/2012/20121111_1.jpg)

Als hulpmiddel voor het 'ontwerpen' heb ik Lochmaster (http://www.abacom-online.de/uk/html/lochmaster.html) gebruikt.

Twee werkende decoders en een hoopje componenten minder...

[edit]: links werkten niet (geen quotes rond de URL zetten!)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 11 november 2012, 12:48:45 pm
Hoi, Peter.

De link naar Brandt werkt bij mij niet ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 november 2012, 12:55:24 pm
Jean, nu wel: zie de [edit] in mijn vorig bericht  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: krispy op 15 november 2012, 10:30:22 am
Gisteren avond het AM75  NEW LOOK ( moderniserings ) .....

verplaatst naar juist topic : waar zijn we mee bezig ?

sorry  ;) ;) ;) ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 15 november 2012, 10:57:40 am
Verkeerde topic, Kris?  ;) Het heeft niet echt met microcontrollers te maken, hé  :D
Zelf ben ik momenteel in de bedenk/ontwerpfase:
- sturingsmodule voor 4 servo's (bedoeld voor wissels, maar mechanische seinen kan natuurlijk ook)
- er op aan te sluiten (universeel) bakje met klavier en LCD-schermpje om de servo's "ter plaatse" af te regelen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 november 2012, 12:51:48 pm
Mooie uitdaging Gerolf. Zelf zit ik nu in de eindfase van een keukenrenovatie schaal 1 op 1. (kwestie van mijn vrouwke ook wat te gunnen…) Als dit achter de rug is, dan kan ik me weer op het µC en modelbouw gebeuren richten.

Mijn petekind heeft een Legotrein gekregen voor zijn verjaardag. Ik heb al de vraag gekregen om de wissels te automatiseren. Dat is een uitdaging naar mijn hart. Vooral omdat de lego trein draadloos werkt en dat ik daar ook gebruik van wil maken om de wissels via servo's aan te sturen...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2012, 13:04:10 pm
@Gerolf: Controller?  Taal?  Interruptgestuurd?

@Geert: we komen weer eens in elkaars vaarwater: voor een RGB ledstripsturing heb ik gebrek aan ingangen op een PIC (voor uitgebreide instellingen).  Overal waar ik rondkijk in huis liggen er IR afstandsbedieningen...  Eén ingang volstaat om een IR decoder aan te sluiten...
Hoe is het met de afwerking van je 'tunnel' op 1/1  ;) ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: krispy op 15 november 2012, 14:04:39 pm
Ik zit hier met het gedacht om extra functies uit decoders te gaan halen door middel van het susi kanaal die er zich op bevinden

Hiervoor ben ik op zoek naar allerhande info ivm data dat op dit kanaal verschijnt

Doel : ik zou willen een controlerke programmeren zodat er extra functies vrij komen op decoders ( zoiets als LSM heeft toegepast in hun HLE18² ) zij maken dmv een extra u controler ook extra functies uit decoders met susi aansluiting.

Heb hier verschilende projectjes liggen waar dit zekers van pas zou komen.

iemand ervaring mee ?
 opbouw protocol , welke woorden worden verstuurt , ....
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 15 november 2012, 17:40:58 pm
@Gerolf: Controller?  Taal?  Interruptgestuurd?
AtMega8, Bascom, en nee  :D
't Is de bedoeling dat de servo's door logische niveau's aangestuurd worden naar voorgeprogrameerde standen aan een instelbare snelheid, en terugmelding geven als ze effectief die stand bereikt hebben.
Een meerpolige connector geeft verbinding met een kastje-met-LCD-en-klaviertje, dat ik later ook voor andere projectjes wil kunnen gebruiken.
Ik twijfel nog om in dat kastje ook een µC te steken. Het zou heel wat poorten bezuinigen, maar het "communicatieprotocol" blijft lastig
RS232? I2C? ... ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2012, 19:34:45 pm
Gerolf, ik zou sowieso een afzonderlijke controller gebruiken voor de keyboard/LCD module.  Die controller moet zich dan enkel maar bezig houden met zijn kavier te scannen, data naar het display sturen en zijn communicatiebus in de gaten houden.

Communicatie?  I2C!  Ik weet wel niet of een AtMega8 die hardwarematig aan boord heeft en/of er via Bascom eventueel een software-emulatie mogelijk is (één of andere 'nerd' zal daar wel al een bibliotheek voor geschreven hebben zeker)?

Waarom niet interruptgestuurd?  Elk programma (hoe klein of hoe groot ook) die bij mij in een controller gaat, is interrupt gestuurd (meestal time-based).  Op die manier kan je heel eenvoudig synchrone en asynchrone processen laten samenwerken.

Die meerpolige connector kan met I2C tot 4 draadjes teruggebracht worden (Vcc, GND, SDA en SCL).

Om met busprotocollen te spelen is een Bus-Pirate een zinvolle investering  ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 november 2012, 21:18:43 pm
@Peter,

vandaag tussen de verbouwingswerkzaamheden (niet aan de tunnel 1/1, deze is al een tijdje in gebruik) ook wat opzoekwerk gedaan naar hoe het Lego protocol met IR afstandsbediening werkt. Spijtig genoeg is dit geen bestaand treinprotocol, of ik moest me vergissen?  Om dit protocol na te bootsen met µC zie ik nu al iets minder zitten. Maar ja wie weet…

toch een leuk filmpje gevonden wat je er o.a. mee kunt doen: http://www.youtube.com/watch?v=2s4yFDAOhHA


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 15 november 2012, 22:42:53 pm
@PeterC: Ik denk dat ik voor seriële communicatie ga, en een Atmega8 bij de LCD en toetsen ga zetten.
Maar I2C veronderstelt master en slave, en welke is dan master? Bovendien is een slave in Bascom niet zo eenvoudig te maken

RS232 (maar zonder signaalnivo-aanpassing met een MAX232) lijkt me handiger, en ja - met interrupts  ;)
Volgens mij even veel (even weinig) draadjes nodig  ;)
én er hoeft geen slave te zijn,
én er moet immers slechts tussen 2 controllers "gepraat" worden.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2012, 23:31:39 pm
Gerolf, bij het 'master-slave' gebeuren moet je soms eens achterste voren denken: in jou geval wil je servo's aansturen dmv een keyboard.  Je zou denken dat de keyboardcontroller de master is maar dat is niet zo!  De controller van de servo's is de master want die voert het uiteindelijke werk uit!
De keyboardcontroller moet alleen maar zijn toetsenbord in de gaten houden en als er een toets ingedrukt wordt, meldt hij dat (nederig) aan de master door een interruptlijn laag te maken (geen controller interrupt, wel een I2C interruptlijn).  De master (servocontroller) ziet dat als hij die lijn polled en als hij tijd en zin heeft gaat hij de slave vragen wat de toets was en daar gepast op reageren (asynchroon proces - steekt hem op geen xx ms).

Als die Atmega's niet echt uitgerust zijn voor (zowel) master als slave I2C communicatie ben je inderdaad wellicht beter af met seriële communicatie (zonder niveau-omzetters).

I2C is ideaal als je een heleboel werk wil verdelen over verschillende controllers waarbij elke controller zijn stukje verricht en één of meerdere 'masters' daar de vruchten van plukken.  Het voordeel is dat je een groot project kan opdelen in kleine (onderhoudbare) programmaatjes en nadien kan bundelen (hardware- en softwarematig) met ook een minimaal (onderhoudbaar) programma.

Toch interrupts  :) :) :)  Je zal zien: kl*terij als het niet werkt zoals je dacht maar eenmaal onder de knie kan je een controller doen multitasken (tijdverdeling over de verschillende processen).

Een kleine tip (je hebt een goeie scoop heb ik al gezien): bij aanvang van je interruptroutine zet je een poort hoog; bij het verlaten van de interruptroutine zet je ze terug laag.  Met je scoop kijk je op die poort en als je daar een een stabiel signaal krijgt, werkt je interrupt (time-based).  Aan de hand van je duty-cycle (puls/pauze verhouding) kan je zien hoeveel tijd (procentueel) je per interrupt-cycle nog over hebt om je main-loop uit te voeren (die main loop kan over xxx interruptcycles lopen).

Ik ben op die manier aan het 'spelen' om RGB Led strips aan te sturen met werkelijke RGB kleuren (3*8 bits) op een PIC die op 8MHz draait (0,5 µs per instructie) en ben de interruptroutine met de scoop zo aan het tunen dat er daadwerkelijk nog wat beperkte tijd over blijft om het hoofdprogramma uit te voeren (3 potmeters via AD lezen en de resultaten op een LCD zetten).  De sturing van de Led's gebeurt met drie software gestuurde PWM's (bij gebrek aan hardware PWM's).
Het werkt momenteel maar niet zoals ik het wil.  Ik ben van 8 bits PWM (256 mogelijkheden per kleur R G B) al moeten minderen tot 6 bits (64 stappen per kleur) om de zaak draaiende te krijgen.
Ik speel nu met de gedachte om per kleur een controller in te zetten en via I2C...    ;)


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 16 november 2012, 00:45:18 am
De tip met de controllerport voor een scoop hou ik in gedachte  8)
Ik hou het (waarschijnlijk) toch op RS232.
- Daarmee kan ik gemakkelijker strings versturen, die dan rechtstreeks naar de LCD gaan (2x16)
- Toetsaanslagen gaan dan als eenvoudige 1byte-code naar de servocontroller
Doosje en LCD heb ik al - printontwerp zou dan niet te lastig mogen zijn  ;)
Een manier om "heet" aan te sluiten heb ik ook al in gedachte ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 16 november 2012, 16:25:04 pm
Gerolf, RS232 is inderdaad het eenvoudigste.
Om die servo's trillingsvrij te sturen kan je het best met een timerinterrupt werken.
Ik verklaar me nader:
- Je laat een timer bv elke 10µs een interrupt genereren
- Je telt deze interrupts
- Bij 0 maak je hetservosignaal hoog en bij een waarde tussen 100 en 200 maak je het terug laag (zo heb je een puls van 100 * 10µs a 200 * 10µs = 1 à 2ms.
- Als je er 2000 geteld heb dan begin je op nieuw (20ms tussen het begin van elke puls).

Je kan zo simultaan zeker 8 servo signalen generen die mooi stabiel blijven (geen trillende servo's) zelfs als via RS-232 de stand van de servo's aanpast.

Voor meer info stuur je me maar een PM.

Harald
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 16 november 2012, 17:00:22 pm
Best ook rekening houden met het feit dat de servomotor het meeste stroom trekt  op het moment dat je deze 1 à 2ms puls aanbrengt, en deze aangebrachte puls niet overeenkomt met de interne puls. Heb ik al eens nagegaan met een oscilloscoop.  (spanningsval over 1 Ohm) Heb je geen goed gestabiliseerde voeding, dan kan het zijn, dat als alle servomotoren bewegen de voeding onderuit gaat.  :(
Dit kan je deels oplossen door op de uitgangen van de µC de pulsen te verschuiven.  Een schema maakt direct duidelijk hoe je de uitgangen van de µC het best aanstuurd:

(http://users.telenet.be/RedDeBist/MBAAN/Servo_aansturen_MM_digitaal_bestanden/image009.jpg)


Maar ook dit blijkt soms nog niet voldoende, zelf moet ik de software nog aanpassen dat er ook tussen elke verschillende puls even een kleine pauze is. 

En zoals je weet, als de pulsen stoppen, dan blijft de servo vast staan in deze positie. Zeer handig…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 16 november 2012, 17:07:50 pm
@Peter:

je staat toch redelijk wat stappen voor op mij zulle. Hopelijk deel je ook nu je opgedane kennis via je site  ;)

( ja ik weet het, een site up to date houden daar steek je veel tijd in, en we leven maar zo kort, en in die korte tijd willen we zo veel doen...)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 november 2012, 03:59:20 am
...Hopelijk deel je ook nu je opgedane kennis via je site  ;)
...

Kennis die niet gedeeld wordt, gaat verloren...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 20 november 2012, 20:18:26 pm
Best ook rekening houden met het feit dat de servomotor het meeste stroom trekt  op het moment dat je deze 1 à 2ms puls aanbrengt, en deze aangebrachte puls niet overeenkomt met de interne puls. ... Heb je geen goed gestabiliseerde voeding, dan kan het zijn, dat als alle servomotoren bewegen de voeding onderuit gaat.  :(
Om die reden dacht ik de servovoeding (per servo) pas in te schakelen als er moet bewogen worden. Bij wisselmotoren is dat niet zo tijd-kritsich, dus dat kan één voor één ipv allemaal tegelijk  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 december 2012, 09:38:22 am
Ik heb deze week het communicatieprotocol P50x tussen een PC programma (vb koploper) en een centrale (vb: Intellibox;)  is bekeken. Eigenlijk is dit best te doen om dit in een µC te stoppen.  Waarom een dure centrale aanschaffen die enkel maar als doorgeefluik moet dienen of een tweede PC met bv. MR-direct, denk ik dan… Ervaring met zelfbouw boosters en S88 modules heb ik al. Hoe diverse lok protocollen werken DCC, MM daar heb ik ook al één en het ander voor geschreven. Mfx is nog een uitdaging voor later… 

Vandaar mijn vraag, zijn er al onder jullie die dat ook al eens geprobeerd hebben. Overigens dit project is voor de toekomst, en zoals gewoonlijk (als het lukt) te volgen op mijn site.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 01 december 2012, 09:54:35 am
Geen ervaring, maar grote interesse !
Ik volg met argusogen  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 01 december 2012, 10:02:44 am
Geen ervaring, maar grote interesse !
Ik volg met argusogen  ;)


idem dito, hopelijk komt hieruit een schema voort die men kan nabouwen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 01 december 2012, 10:05:19 am
Best ook rekening houden met het feit dat de servomotor het meeste stroom trekt  op het moment dat je deze 1 à 2ms puls aanbrengt, en deze aangebrachte puls niet overeenkomt met de interne puls. ... Heb je geen goed gestabiliseerde voeding, dan kan het zijn, dat als alle servomotoren bewegen de voeding onderuit gaat.  :(
Om die reden dacht ik de servovoeding (per servo) pas in te schakelen als er moet bewogen worden. Bij wisselmotoren is dat niet zo tijd-kritsich, dus dat kan één voor één ipv allemaal tegelijk  ;)

Er bestaan "Servomodules" (voor 8 servo's) op de markt (SX-protocol) waarbij je per servo de spanning kan uitschakelen na omloop of ook niet.

Erik
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 01 december 2012, 10:15:22 am
Er bestaan "Servomodules" (voor 8 servo's) op de markt (SX-protocol) waarbij je per servo de spanning kan uitschakelen na omloop of ook niet.
Ik hou het op 4 - als er meer wissels vlak bij elkaar staan is een tweede/derde/... module bij te plaatsen, maar het spaart draad bij "eenzame" wissels
Dat SX-protocol lijkt me na de eerste Google-resultaten via USB te gaan. Ik heb (als de bouw rond is) zowat 100 wissels op mijn baan, en waarschijnlijk een 20tal mechanische seinen. 15 van die dingen (120/8) lijkt me wat lastig om aan te sturen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 december 2012, 10:28:51 am
Geen ervaring, maar grote interesse !
Ik volg met argusogen  ;)


idem dito, hopelijk komt hieruit een schema voort die men kan nabouwen.

Veel schema zal dat niet zijn.  Alles zit in een kleine µC.  Twee in- uitgangen voor  communicatie PC. Vier in/uitgangen S88 protocol (mijn S88 bus heeft er maar drie nodig omdat ik geen S88 reset gebruik) Eén voor digitaal signaal naar booster, eventueel tweede signaal voor booster programmeerspoor. Eventueel ander dingen waar ik nu niet aan denk, maar het moet basis blijven, geen toeters of bellen...

Overigens er zijn al die mij voorgegaan zijn, maar deze geven ofwel hun code niet vrij, of ze zijn moeilijk zelf na te bouwen. Ook heb ik al software gezien die werkt met Qbasic. En als het daarmee al lukt...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 01 december 2012, 11:05:33 am
Geert, de enige ervaringen zijn wat theoretische beschouwingen die ik ooit eens gemaakt heb (als je een IB of PC voor DDW of MR-direct kan vervangen door een controllertje is de keuze rap gemaakt)...

Toch enkele bedenkingen waardoor het idee voorlopig in een schuifje in mijn achterhoofd beland is:

De enorme hoeveelheid aan taken: seriëel P50 commando's lezen, S88 lezen en via P50 terugsturen, MM en DCC signaal genereren.  Drie processen met verschillende timings onder controle houden...  Dit alles (in jou geval) in assembler programmeren...

Ik vrees dat een PICje te 'klein' is en asm veel te omslachtig is voor dergelijke processen.
Hogere programmertaal (je gaat moeten gebruik maken van heel wat arrays om alles bij te houden) geeft dan weer veel overhead waardoor je tijdsgebrek gaat krijgen in je controller.

Mogelijke oplossing: P50 naar een dispatcher sturen (met USB interface).  Dispatcher filtert en stuurt naar een (afzonderlijke) MM-DCC generator.  Dispatcher ontvangt S88 van een (eveneens afzonderlijke) S88 generator.  Onderlinge communicatie?  SPI of I2C.

Ik denk dat het met drie controllertjes wel zou lukken.  Voor de kostprijs van een controllertje moet je het zeker niet laten en je hebt drie afzonderlijke (kleinere waardoor gemakkelijker te onderhouden) programma's.  Eventueel assembler voor je signaalgeneratoren en best een hogere programmeertaal voor je dispatcher (USB in assember is andere koek).

Veel succes met je project en ik volg natuurlijk ook!

Ik heb ook nog zo mijn bedenkingen met diegene die hun code niet vrijgeven.  Kennis die niet gedeeld wordt, gaat verloren...  ...Of er zijn commerciële belangen in het spel of het zijn gewoon egoïsten...  :-[ :-[ :-[  >:( >:(

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 december 2012, 13:13:00 pm
Peter,
Het zal wel geen PIC µC uit de 16 reeks worden, eender eentje uit de 18 of 24 reeks. Ik heb redelijk wat RAM nodig en deze zit niet in de 16 reeks. 

De timing zal wel meevallen: tijdens de pauzes van het digitaal signaal, kan je de S88 bus inlezen. De seriële communicatie naar PC zit hardwarematig al op de meeste PIC’s

we zien wel, eerst eenvoudig beginnen. Een eenvoudig basic programma die P50x codes genereert is er al.

Maar eerst nog enkele andere projecten afwerken…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 december 2012, 21:47:47 pm
De eerste horde is genomen:

(http://www.meb.gerolf.be/sturing/bm/servostuur/20lcdtest.jpg)

Ik kan voor het eerst tekens op een lcd-display tonen.  8)
Nu de volgende stap: toetsen via een matrix inlezen en er op reageren
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 08 december 2012, 22:01:01 pm
De eerste horde is genomen:

(http://www.meb.gerolf.be/sturing/bm/servostuur/20lcdtest.jpg)

Ik kan voor het eerst tekens op een lcd-display tonen.  8)
Nu de volgende stap: toetsen via een matrix inlezen en er op reageren

Wat ga je bouwen Gerolf ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 december 2012, 22:20:51 pm
Dit wordt een "universeel" besturingsbakje voor mijn volgende schakelingen
Het eerste meer spoorse project dat ik er mee wil bedienen zijn servo's (voor wissels)
Met dit bakje zou ik die servo's gemakkelijker ter plaatse moeten kunnen afregelen ...
Dit bakje zou dus moeten "praten" met een andere microcontroller (dat is de derde horde)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 08 december 2012, 22:21:10 pm
De eerste horde is genomen:


Ik kan voor het eerst tekens op een lcd-display tonen.  8)
Nu de volgende stap: toetsen via een matrix inlezen en er op reageren

Wat ga je bouwen Gerolf ?
Zie je dat niet? Een GPS om in z'n treinen te stoppen.  :D :D ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 december 2012, 22:24:06 pm
Wat ga je bouwen Gerolf ?
Zie je dat niet? Een GPS om in z'n treinen te stoppen.  :D :D ::)
:D  :D GPS komt van Gerolf PeeterS
Hoe dat navigatiesysteem aan mijn initialen is geraakt is me nog steeds een raadsel  ???
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 08 december 2012, 23:10:15 pm
... Hoe dat navigatiesysteem aan mijn initialen is geraakt is me nog steeds een raadsel  ???
;D ;D ;D

Gerolf: alle gekheid op een stokje: eens mijn bouwwoede wat afgekoeld is, wordt dit microprocessor gestoei mijn nieuwe werkterrein, en dan kom ik zeker over je schouder meekijken.  (en ook over die van Geert, en Peter, en ... )  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 09 december 2012, 01:07:41 am
[eens mijn bouwwoede wat afgekoeld is, wordt dit microprocessor gestoei mijn nieuwe werkterrein, en dan kom ik zeker over je schouder meekijken.  (en ook over die van Geert, en Peter, en ... )  ;D
Doe gerust  ;) Ik vind de techniek hoe langer hoe meer interessant:
Printplaatjes geven meer mogelijkheden en zijn veel eenvoudiger (te routen  ;D )
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 december 2012, 11:58:12 am
...Ik kan voor het eerst tekens op een lcd-display tonen.  8) ...

Gerolf, ik ken dat gevoel...  ...Een blind, doof en stom controllertje toch met jou laten communiceren!  En als het dan nog werkt zoals je gepland had, is de voldoening nog zo groot.

Die naamverwijzing is origineel gevonden maar moet daar geen kleine omcirkelde 'R' achter  ;)

...Nu de volgende stap: toetsen via een matrix inlezen en er op reageren...

Hierbij is de uitdaging om met zo weinig mogelijk poorten zoveel mogelijk toetsen te lezen, maar met matrixen heb je in een ander project al heel wat ervaring.

...Printplaatjes geven meer mogelijkheden en zijn veel eenvoudiger (te routen  ;D ) ...

Ja, als je technieken op punt staan (pas na heel wat ervaring).

Ik ben teruggekeerd naar mijn roots en bouw terug op gaatjesbord (wel met software voor het ontwerp).  Geen gedoe meer met het ontwerp te transfereren naar de koperplaat, geen gedoe meer met chemicaliën.  Met eenvoudig huis-tuin-en-keuken-gereedschap in elkaar te flansen en voor serietjes tot 10 stuks ook nog te doen:


(http://www.pctoytoy.be/2012/20121209_1.jpg)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 09 december 2012, 12:53:33 pm
Ik ben teruggekeerd naar mijn roots en bouw terug op gaatjesbord (wel met software voor het ontwerp).  Geen gedoe meer met het ontwerp te transfereren naar de koperplaat, geen gedoe meer met chemicaliën.  Met eenvoudig huis-tuin-en-keuken-gereedschap in elkaar te flansen en voor serietjes tot 10 stuks ook nog te doen:

Kwestie van gewoonte, denk ik.
Mijn etsbak staat hier steeds klaar voor gebruik, uittekenen doe ik op de trein van en naar het werk.
Voor mij zijn de kosten (zo'n gaatjesprint is een pak duurder) en de compactere printplaatjes belangrijk.
Zelfs voor één printje maak ik een geëtste plaat, maar voor kleine series is het natuurlijk pas echt interessant  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 december 2012, 14:21:59 pm
Ik ben teruggekeerd naar mijn roots en bouw terug op gaatjesbord (wel met software voor het ontwerp).  Geen gedoe meer met het ontwerp te transfereren naar de koperplaat, geen gedoe meer met chemicaliën.  Met eenvoudig huis-tuin-en-keuken-gereedschap in elkaar te flansen en voor serietjes tot 10 stuks ook nog te doen:

Kwestie van gewoonte, denk ik.
Mijn etsbak staat hier steeds klaar voor gebruik, uittekenen doe ik op de trein van en naar het werk.
Voor mij zijn de kosten (zo'n gaatjesprint is een pak duurder) en de compactere printplaatjes belangrijk.
Zelfs voor één printje maak ik een geëtste plaat, maar voor kleine series is het natuurlijk pas echt interessant  ;)

Inderdaad!  En gelukkig zijn er meerdere mogelijkheden om iets tot een goed eind te brengen ;-)

Mijn controller projectjes liggen ook niet stil; een greep uit mijn 'momentele' bezigheden:

- Servodecoder (aanpassing naar standaard componenten van Sven Brands SAnD-Ei (http://www.digital-bahn.de/bau_servo/sandei.htm)).
- Seindecoders (eveneens een aanpassing van een ontwerp van Sven Brands Universeller LED-Decoder (http://www.digital-bahn.de/bau_led/led.htm)).  Diverse testseinen.
- Een universeel PIC experimenteerbord (in het genre van de EasyPIC (http://www.mikroe.com/easypic/) maar iets compacter maar ook modulair).
- Een RGB led strip controller (eigen ontwerp) voor real RGB kleuren (3*256 kleuren).
- ...

Nog genoeg werk (lees bezigheden).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 09 december 2012, 21:10:51 pm
Goed kunnen doorwerken dit weekend:

Het stuurkastje zit in een kastje:

(http://www.meb.gerolf.be/sturing/bm/servostuur/25stuurkast.jpg)

... en de er mee af te regelen servo-aansturing is opgebouwd:

(http://www.meb.gerolf.be/sturing/bm/servostuur/30servoprint.jpg)

Nu nog uitproberen, maar vooral nog veel programmeren
=> de eerstvolgende 3 dagen op de trein van en naar het werk ben ik "bezig"  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 09 december 2012, 22:11:14 pm
Dit wordt een "universeel" besturingsbakje voor mijn volgende schakelingen
Het eerste meer spoorse project dat ik er mee wil bedienen zijn servo's (voor wissels)
Met dit bakje zou ik die servo's gemakkelijker ter plaatse moeten kunnen afregelen ...
Dit bakje zou dus moeten "praten" met een andere microcontroller (dat is de derde horde)

En wat ben ik nu net bezig geweest... Een µC progje om 16 servo's aan te sturen voor mijn 7 jarige petekind zijn  lego trein-wissels. En als je inbeeld in de leefwereld van een  7 jarige dan moet dit heel eenvoudig zijn om de servo in te stellen. Ik denk dat het me ook gelukt is.? Geen displays, geen computer of wat dan ook. Gewoon enkele schakelaartjes waar hij het min en max bereik van de servo kan instellen. En voor een extra uitdaging heb ik ook de omlooptijd (de tijd tussen min en max) variabel gemaakt. En dit allemaal met één potmeter voor al die 16 servo’s. ( min , max, en omlooptijd) De code volgt…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 09 december 2012, 23:25:15 pm
Gerolf, Geert, twee interessante projecten !
Gerolf, je kastje ziet er professioneel uit  ;)
Doe beiden maar lustig voort. Tegen dat ik hiermee van start ga, zijn alle oplossingen "van 't schap" t krijgen  :P
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 10 december 2012, 01:20:43 am
Bedankt, Jean  :D
...ook de omlooptijd (de tijd tussen min en max) variabel gemaakt...
Wil ik ook programmeerbaar maken, en dus de settings in eeprom laten opslaan.
Ik heb al wel ideeën hoe, maar het moet natuurlijk nog lukken  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 december 2012, 08:15:29 am
Bedankt, Jean  :D
...ook de omlooptijd (de tijd tussen min en max) variabel gemaakt...
Wil ik ook programmeerbaar maken, en dus de settings in eeprom laten opslaan.
Ik heb al wel ideeën hoe, maar het moet natuurlijk nog lukken  ;)

En de bewegingscurve?  Zoals de uitdeinende beweging bij een slagboom/armsein op de eindpunten van hun verplaatsing...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 december 2012, 09:57:51 am
Goed idee, Peter  8) Neem ik op in het programmeerwerk  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 11 december 2012, 21:22:45 pm
Bedankt, Jean  :D
...ook de omlooptijd (de tijd tussen min en max) variabel gemaakt...
Wil ik ook programmeerbaar maken, en dus de settings in eeprom laten opslaan.
Ik heb al wel ideeën hoe, maar het moet natuurlijk nog lukken  ;)

En de bewegingscurve?  Zoals de uitdeinende beweging bij een slagboom/armsein op de eindpunten van hun verplaatsing...

Dat is een uitdaging voor later, Véél later... , ;)

Ondertussen al een ontwerp gemaakt voor het schakelingske.

(http://users.telenet.be/RedDeBist/MBAAN/16 servos met potmeter.JPG)

Wat is nu de bedoeling, als een schakelaar open staat (linkerkant print) , dan staat de servo links. Is deze gesloten, dan staat de servo rechts. (of ook: tegen de klok in of mee ...)

Hoe stel je nu per servo het linkse en rechtse bereik in? Wel via de potmeter links op de schakeling en met behulp van brugjes (zware blokjes op print met twee bolletjes).  Wil je de servo zijn bereik links instellen, dan steek je een brugje op instelling links bereik en je selecteer je servo. Met de potmeter kan je direct de servo laten bewegen tussen 0.5ms en 2.5ms (hiervoor moet je wel iets over servo’s weten, de meeste werken tussen 1ms en 2ms…). Ben je tevreden, dan deselcteer je de servo en de instelling wordt opgeslagen in EEPROM. Hetzelfde voor het rechtse bereik, maar nu met een ander brugje.
Wil je de omlooptijd instellen per servo, dan steek je weer een ander brugje in, en je selecteert weer je servo. De instelling van weer dezelfde ‘potmeter’ gaat nu tussen 2s en 60s. Deselcteer je weer de servo, dan zal de omlooptijd opgeslagen worden in EEPROM. Je kan nu testen of je tevreden bent met de omlooptijd.
Hoe selecteer je nu een servo voor instellingen? Zet al de schakelaars open, en deze die toe is, is de geselecteerde.

Vragen laat maar komen… De code volgt nog. Deze eerst wat leesbaar maken, het is in Assembler  8)

Edit: nog vergeten bij te vertellen, in normaal bedrijf kan je meerdere servo's tergelijkertijd laten bewegen. Maar praktisch beperkt tot 8. En ook handig, als de servo zijn positie heeft bereikt, dan stoppen de referentiepulsen (lap zeg, hier moet je ook weer iets van servo's kennen ;) )

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 11 december 2012, 21:46:50 pm
Alweer de eenvoud zelve ... (ten minste zo ziet het er uit) : en zeer practisch !
Benieuwd naar de programmatuur  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 11 december 2012, 21:58:42 pm
Alweer de eenvoud zelve ... (ten minste zo ziet het er uit) : en zeer practisch !
Benieuwd naar de programmatuur  ;)

Had jij niet iets waar veel servo's voor nodig waren? Een lok werkplaats of zoiets met veel poorten? Je mag er aan beginnen, maar ik wil je wel best een geprogrameerde µC opsturen. Normaal bij conrad kost zoiets 4 à 5 € per µC. Met de rest erbij  X2. Dus voor een 10 € heb je zulke schakeling (zonder servo's  :( ;) )

Laat maar weten...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 11 december 2012, 22:51:10 pm
Geert,

Sedelocus had een locloods in de rotsen, maar dat project staat bijna op afbraak !
Op de Scrap Yard heb ik een kraan in opbouw, maar die wordt via micromotortjes aangedreven.
Voor Turnhout NEEB zal ik wissels moeten aansturen, en daar denk ik aan servootjes in plaats van de lawaaierige SEEP motortjes

Maar voor mijn nieuwe thuisbaan, die ik in 2013 hoop op te starten, is alles mogelijk, en de electronica zal er zeker deel van uitmaken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 14 december 2012, 20:01:26 pm
2 hordes genomen: Matrix-toetsenbordje kunnen inlezen, én 2 microcontrollers met elkaar doen "babbelen"
In testopstelling:
- knop indrukken op het "algemene" kastje
- de toepassing krijgt een code toegestuurd
- wordt verwerkt en stuurt corresponderende tekst terug
... en die verschijnt op de lcd  8)

... en nu de "toepassing" laten doen wat hij moet: servo's aansturen  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 14 december 2012, 20:20:12 pm
...én 2 microcontrollers met elkaar doen "babbelen"...
In testopstelling:

Geen 'kletswijven' van maken hé  8) 8) 8)

...Een manier om "heet" aan te sluiten heb ik ook al in gedachte ...

Al praktisch uitgewerkt?  Volgens het USB principe?  Voedingscontacten langer dan de communicatiecontacten (dus eerst de voedingsspanning erop en dan pas verbinding met de communicatiecontacten)?


Binnenkort plaats ik mijn ervaringen met de SAnD-Ei servo-decoder (in mijn enthousiasme een Viessmann armsein naar de kl.. geholpen  >:( >:( >:( )...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 14 december 2012, 22:02:47 pm
...Een manier om "heet" aan te sluiten heb ik ook al in gedachte ...
Al praktisch uitgewerkt?  Volgens het USB principe?  Voedingscontacten langer dan de communicatiecontacten (dus eerst de voedingsspanning erop en dan pas verbinding met de communicatiecontacten)?
Euh nee - ongeveer tegelijktertijd, maar wat tijd voor het kastje om in te schakelen (verlengde reset)
Werkt tot nu toe probleemloos  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 14 december 2012, 22:42:28 pm
...verlengde reset...
Werkt tot nu toe probleemloos  ;)

En zal probleemloos blijven werken.  De truc met de duif...  Voorzie wel pull-up of pull-down (afhankelijk van je prototol) weerstanden om een initieel signaal naar je ontvanger te sturen (anders hangen je communicatielijnen een 'tijdje' in het ongewisse).

Elektronische communicatie is op vele vlakker 'eenvoudiger' dan menselijke!  Ofwel volledige, ofwel geen communicatie (en de communicatie is right-to-the-point).  Een 'eugg', 'ik vermoed...', 'ik twijfel...', 'ik denk...' is uitgesloten...

Vaak heb ik de voorkeur aan 'elektronische-communicatie'...  :) :) :)             ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 15 december 2012, 01:20:15 am
Citaat
Voorzie wel pull-up of pull-down (afhankelijk van je prototol) weerstanden om een initieel signaal naar je ontvanger te sturen (anders hangen je communicatielijnen een 'tijdje' in het ongewisse).
De standaard hardware-communictaiekanalen (RS232) liggen bij mijn AtMega8 blijkbaar vanzelf aan +
Maar ik zal er aan denken als ik later ook software-uart's gebruik  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 december 2012, 19:01:29 pm
YESSS, het werkt zo goed als ik wou: http://www.meb.gerolf.be/sturing/bm/servostuur/serv4test.wmv

(http://www.meb.gerolf.be/sturing/bm/servostuur/k/serv4test.jpg)

Het centrale "brein" - de eerste toepassing van dit concept - ligt links, en stuurt tot 4 servo's
Met het lcd-en-knopjes-kastje kan ik de zaak ter plaatse afregelen en testen, en parameters opslaan:
 - uiterste standen van de omslag
 - virtueel middelpunt
 - snelheid
 - uitzwengel-afstand
... en natuurlijk ook uitschakelen, als ik niet de maximale 4 servo's aan de print aansluit  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eddy op 24 december 2012, 22:34:15 pm
Altijd prettig,als je iets bouwt en het werkt dan naar wens. :)

groeten eddy
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 24 december 2012, 23:14:02 pm
YESSS, het werkt zo goed als ik wou:...
Prachtig, Gerolf
Je kunt je niet voorstellen hoeveel goesting dit geeft om er zelf weer mee van start te gaan ...
Veel succes met het vervolg !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 december 2012, 01:24:41 am
Dat je daar telkens ook nog de tijd voor neemt om er een printje voor te ontwerpen, dat bewonder ik in je Gerolf. Ik weet van mezelf dat ik eerst langdurig moet testen op breadboard. Om dan over te schakelen op strokenprintje, en verder dan dat kom ik meestal niet meer.

Maar het geeft uiteraard enorme voldoening om je project te zien functioneren zoals jij dat wil(de).

Voor andere volgers van dit draadje, het loont echt de moeite om te beginnen met microcontrollers. En dit hoeft niet altijd in een moeilijke programmeertaal, er zijn ook leesbare programmeertalen.  Ondertussen zijn er hier al enkele die jullie graag op weg willen helpen! En de meeste beginnen met een knipperlichtje of om een ingang gewoon door te sturen naar een uitgang. Dit is de eerste keer echt kicken als dat je al lukt. Ik ben ook ooit zo begonnen…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steven123 op 25 december 2012, 01:35:58 am
Ferm werk Gerolf, dat ziet er weer veelbelovend uit voor je volgende project(en) ;)
Leuk speelgoed!  8)

Succes,
Steven
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 25 december 2012, 09:37:52 am
Merci, mensen  :)
Dat lcd-met-knopjes-kastje is ook handig om het programma te debuggen:
Je kan er in de ontwikkelfase een boodschap naartoe sturen (variabele of zo) waarvan je denkt dat die fout kan zitten

In het filmpje slaat de linkse servo soms wild uit - dat ligt aan de servo zelf, die door mijn toedoen wat beschadigd is  :-[

@Geert: zelf de pcb ontwerpen doe ik op werkdagen "onderweg op de trein", en is dus eigenlijk "verloren tijd" goed gebruiken.
Bovendien heb ik er intussen al heel wat getekend, en kan ik vertrekken van bestaande ontwerpen.
Vooral voor deze sturing is een printontwerp handig (kleine serie: véél wissels, enkele armseinen, een overweg, ... ?  ;) )

Nachtje over geslapen, en ik ga nog enkele kleinigheidjes in de software aanpassen:
- communicatiesnelheid proberen verhogen (nu staat die op 1000 baud)
- beginwaarden voor de servo's aanpassen: vooral het zwengelen heb ik bijna niet nodig, dus die zet ik standaard op 0
- wat debug-routines in het witte kastje verwijderen, en standaardteksten toevoegen

... maar ik ga nu vooral een "chassis" maken (met plaats voor 2 microschakelaars) om de servo's zelf gemakkelijk onder de baan te plaatsen. Dat wordt knutselen met styreen, een siliconenmal, en resin  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 december 2012, 09:44:49 am
Gerolf,
Het filmpje kan ik wel niet openen. Is blijkbaar geen standaard formaat.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 25 december 2012, 10:05:47 am
Het zou nochtans niet zo moeilijk mogen zijn. .wmv is voor Windows media player.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 25 december 2012, 11:51:39 am
Gerolf, knap werk!
Stond je micro volledig open tijdens het filmen of zijn die servo's zo'n lawaaimakers  :) :) :)
Het uitzwengelen is wel tof


...Ik weet van mezelf dat ik eerst langdurig moet testen op breadboard. Om dan over te schakelen op strokenprintje, en verder dan dat kom ik meestal niet meer...
Ik ken er nog zo...


...Dat lcd-met-knopjes-kastje is ook handig om het programma te debuggen:
Je kan er in de ontwikkelfase een boodschap naartoe sturen (variabele of zo) waarvan je denkt dat die fout kan zitten...
Zo'n zwarte chip met een programma erin en geen visualisatie is maar niets...  Zelfs als er in het eindondwerp geen LCD nodig is, hang ik er tijdens het testen en debuggen ééntje aan of zorg ik voor een RS232 verbinding naar een terminal (op de PC) om toch minstens te kunnen zien wat de controller doet (en vooral wat hij niet doet).

...Het filmpje kan ik wel niet openen. Is blijkbaar geen standaard formaat...
Windows Media Player Classic met de CCCP codex: opent alles!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 25 december 2012, 12:30:20 pm
Gerolf, knap werk! Stond je micro volledig open tijdens het filmen of zijn die servo's zo'n lawaaimakers  :) :) :)
Het uitzwengelen is wel tof

Bedankt, Peter !
Die servo's zijn goedkope kleine dingen (6 Euro) In werkelijkheid valt het kabaal best mee.
Het idee voor de zwengel-optie kreeg ik van jullie, en het is niet slecht gelukt  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 januari 2013, 14:41:59 pm
Begonnen met "kleinserie"-productie:

(http://www.meb.gerolf.be/sturing/bm/servostuur/40servosteun.jpg)

Een redelijk universele "houder" voor een servootje.
Op de foto: origineel in afgietdoosje en eerste siliconenmal (ik ga er nog een tweede gieten), samengebouwd exemplaar en 2 keer 4 gebruikte resinonderdelen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 05 januari 2013, 15:05:52 pm
Lap zeg, Gerolf is al bezig met de 'omkadering' van zijn servo's. :) Ik ben ook al wat verder geraakt. Maar ik heb één probleem. De 16de servo werkt niet, en dit moet ergens in de software zitten (asm code) . Blijkbaar kijk ik over mijn eigen fout heen??? Help mij... ;)

So wat, hierbij een foto en wat kode hoe ver ik nu al sta...

(http://users.telenet.be/RedDeBist/MBAAN/servosturing.JPG)

code: http://users.telenet.be/RedDeBist/MBAAN/16_servo_met_schakelaar_v1p1.ASM (http://users.telenet.be/RedDeBist/MBAAN/16_servo_met_schakelaar_v1p1.ASM)

Ondertussen werkt dit ook al met MM pulsen. DCC volgt...



Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 januari 2013, 15:25:43 pm
ik heb één probleem. De 16de servo werkt niet, en dit moet ergens in de software zitten (asm code)
Ik heb vroeger wel wat met asm gedaan, maar basic (bascom) is toch handiger  ;)
't Is maar een idee, maar zou het kunnen dat je "16" door overflow "0" wordt?
Heb je van 1 tot 16 genummerd of van 0 tot 15?

EDIT: mijn programmacode: http://www.meb.gerolf.be/sturing/bm/servostuur/4servo.txt
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steven123 op 05 januari 2013, 16:04:00 pm
Begonnen met "kleinserie"-productie:
...

Een redelijk universele "houder" voor een servootje.
  • tot 2 microschakelaars kunnen mee omgezet worden
  • een "balk" wordt in één richting bewogen, en biedt ruimte voor schroeven, ... om een steldraad te bevestigen
Op de foto: origineel in afgietdoosje en eerste siliconenmal (ik ga er nog een tweede gieten), samengebouwd exemplaar en 2 keer 4 gebruikte resinonderdelen

Dat ziet er heel professioneel uit Gerolf!  Lijkt net uit de fabriek te komen, mooie oplossing ;)
groeten
Steven
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 januari 2013, 16:08:50 pm
Bedankt  :D
't Zal ook een klein fabriekje worden, ik heb er (op termijn) zo'n 70 nodig  :o
Vandaar die tweede siliconenmal ... en wie weet heb ik er nog een derde nodig  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 05 januari 2013, 17:27:52 pm
Man man 70. Pfft.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steven123 op 05 januari 2013, 18:35:29 pm
Man man 70. Pfft.

Voor Gerolf is dat vast kinderspel.  ;D
We gaan binnekort weer heel wat te zien krijgen denk ik...  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 januari 2013, 19:09:36 pm
We gaan binnenkort weer heel wat te zien krijgen denk ik...  :D
;D  ;D Binnenkort ?  :o Grote verwachtingen precies  :D
Ik moet AL mijn wisselaandrijvingen (op 6 na) op mijn baan vervangen, en dat is niet zo fotogeniek, hé  :-[
10 conrads, nog 7 te bouwen zoals ik ze in MSM 67 heb beschreven, en de rest van de 101 worden servo's
Als ik goed kan tellen dus 101 - 10 - 6 - 7 = 78 servo's. Maar ik moet ook 22 wissels maken  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 05 januari 2013, 19:15:03 pm
Waarom moet je die zo nodig allemaal vervangen?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 januari 2013, 21:40:43 pm
Tja, omdat ze niet deugen, hé  ;)
't Was een experimenteel zelfbouw-gedoe waar ik 8 jaar geleden "nogal" content mee was:
Oude telefoonrelais met een zelf verzonnen "verlengstuk".
Werken op 48VDC (niet zonder risico), klappen lawaaierig om, een gekl... om ze goed af te regelen, en kwetsbaar:

(http://www.meb.gerolf.be/sturing/bm/wrdubbelk.jpg)       (http://www.meb.gerolf.be/sturing/bm/wrgroepk.jpg)

Ik heb er gelukkig nog "maar" een twintigtal geplaatst, dus afbraak zal wel meevallen  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 januari 2013, 12:34:57 pm
... 48VDC (niet zonder risico),...

Kan een beetje 'kriebelen'  :o :o :o

Gerolf, je bewegende gietstukken, gaan die na een tijdje niet klemmen?  Of worden die gesmeerd?

Mooi project!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 januari 2013, 12:44:45 pm
Gerolf, je bewegende gietstukken, gaan die na een tijdje niet klemmen?  Of worden die gesmeerd?
Mooi project!
Bedankt  ;)
Die bewegende delen zitten lichtjes los in een "zadel", maar ik ga ze zeker wat invetten
Misschien maak ik vandaag nog een detailfoto   :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 06 januari 2013, 21:38:05 pm
Zolang je dat niet doet zoals in telefooncentrales met de + aan de grond en een knoert van een batterij is dat nog niet zo'n ramp.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 06 januari 2013, 22:00:05 pm
Begonnen met "kleinserie"-productie:...
Oei, ik heb de laatste updates van dit draadje gemist, en dat terwijl ze me zo nauw aan het hart liggen ...

Gerolf, hopelijk komen er nog wat detail fotos bij, eens alles goed loopt.
Het ziet er in elk geval véél compacter uit dan je vorige oplossing !
Benieuwd naar het vervolg !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 januari 2013, 21:55:45 pm
Ook maar eens een filmke gemaakt van de servosturing waarbij uiterste standen en omlooptijd instelbaar zijn met één potmeter. Voor overzichtelijkheid heb ik maar 8 servo's aangesloten van de 16. De eerste servo's bewegen redelijk snel, de laatste doen er wel 128 seconden over om hun ingestelde uiterste standen te bereiken. filmke (http://www.youtube.com/watch?v=o3RB0OjRpw4)

Ik heb ook maar een beschrijving (http://users.telenet.be/RedDeBist/MBAAN/Servo_aansturen_digitaal_2.htm) van de werking gemaakt.

Geert

ps: voor zij die dit topic volgen... de 16de servo werkt ondertussen wel. Het was een hardwarefout (een verloren gelopen <--letterlijk!! soldeersel)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 januari 2013, 22:11:35 pm
Leuk filmpje, Geert.
In de tweede helft zie je inderdaad weinig beweging, maar ik geloof je wel dat je 2 minuten omlooptijd kan halen  ;)

Wat ik me wat afvraag: 16 servo's vanuit één printje, en de aansluitkabel van een servo is gemiddeld zo'n 20 centimeter...
Hoe dicht staan je wissels bij elkaar? Ik weet dat ik met 4 wissels per printje al hier en daar "verlengdraad" nodig zal hebben ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 januari 2013, 22:14:34 pm
Het is nog maar een testopstelling. De flatkabel zal in principe de wissels moeten bereiken.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 08 januari 2013, 22:17:20 pm
Prachtig, Geert !
Zo'n schakeling doet me dromen !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 03 februari 2013, 14:13:34 pm
Nog eens wat verbouwd aan mijn "universeel stuurkastje":

(http://www.meb.gerolf.be/sturing/bm/servostuur/lcd1.jpg)

(http://www.meb.gerolf.be/sturing/bm/servostuur/lcd2.jpg)

(http://www.meb.gerolf.be/sturing/bm/servostuur/lcd3.jpg)

Het oorspronkelijke printje heeft al wat achter de rug:
 - montagegaten waren fout opgemeten, nieuwe gaten gingen door printbanen (dus bruggen gesoldeerd)  :-[
 - ik was een helderheidsregeling voor het LCD vergeten, vandaar dat bijgeplaatste trimmertje  :-\
 - en nu "ISP" gebruikt - In Service Programming, zodat ik niet voor elke update alles moet demonteren  :)
=> stel dat anderen zo'n kastje willen namaken, zal ik wel een nieuwe print-layout tekenen.

ISP moet ik nog testen, maar daar eerst nog een simpele voedingsaansluiting voor maken
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 februari 2013, 14:37:55 pm
...vandaar dat bijgeplaatste trimmertje  :-\ ...

Eentje die blijkbaar al lang zijn plechtige communie gedaan heeft  :D :D :D

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 03 februari 2013, 14:45:27 pm
"Uit eigen voorraad", ja - van in de tijd dat ik zowat alle kapotte elektronica sloopte en de onderdelen bewaarde  ;D  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 februari 2013, 17:21:33 pm
De laatst door mij hier in dit draadje beschreven 16 servo’s sturing met schakelaars, waarbij het bereik en omlooptijd instelbaar is met potmeter, is met succes omgebouwd naar eentje met DCC sturing. En vermits er nu 16 ingangen vrij kwamen heb ik deze maar gebruikt om een relais aan te sturen voor puntstuk polarisatie. Wil je de relais voor iets anders gebruiken, dat kan ook want deze hebben hun eigen DCC adres. Ofwel kies je hetzelfde DCC adres zoals voor de servo’s, ofwel kies je een ander DCC adres zodat je eventueel LED’s kan aansturen. En dit allemaal in een PIC 16F887 voor iets meer dan 3€.  ;)

edit: voor zij die iets meer afweten van DCC adressen: per DCC adres kan je 4 servo's aansturen. Dit betekent al 4 DCC adressen voor de 16 servo's. Daarbij komt dan nog eens 4 DCC adressen voor telkens 4 relais uitgangen (ook 16). Totaal dus 8 DCC adressen vrij te kiezen.

Code, filmpje en uitleg volgt…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 20 februari 2013, 19:00:21 pm
Tijd om mijn grenzen te verleggen: begonnen met een draaischijfdecoder (http://www.digital-bahn.de/bau_ds2010/dsd2010_konzept.htm).  Een tijdje gezocht en alles gevonden in 'bouwpakket' en vandaag toegekomen.  Als ik die te solderen SMD'kes bekijk  :( :( :(
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 20 februari 2013, 19:01:35 pm
succes

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 21 februari 2013, 08:41:38 am
Draaischijf aansturen met een microcontroller? Staat ook nog op mijn verlanglijstje  :P
Nu eerst nog volop met servo-wisselmotoren bezig  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 21 februari 2013, 17:37:13 pm
... en de eerste servo-wisselmotoren zijn intussen geplaatst, en werken prima (krachtig, vrij stil, ...)
 - Montagevoet in resin met bewegende stelbalk, tot twee microswitches mogelijk
 - Aansturing voor 4 motoren via printje met microcontroller, reageert op logische +5v-signalen en meld terug
 - Af te regelen met extern kastje: uiterste standen en middenpositie, snelheid, uitzwaai, defaultstand bij 0v aan de ingang
Eindelijk een goede wisselmotor voor niet teveel geld  8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 21 februari 2013, 20:19:47 pm
Nu we toch weer over servo's bezig zijn. De DCC decoder die 16 servo's aanstuurt is getest. En zoals ik ook al eerder aangaf zijn er ook 16 relais uitgangen voor puntstukpolarisatie (een optie die ik voor iets anders ga gebruiken). Meer uitleg en ook hoe het DCC protocol werkt voor aansturing wissels kan je hier (http://users.telenet.be/RedDeBist/MBAAN/Servo_aansturen_digitaal_2.htm#Versie waarbij schakelaars vervangen worden door DCC protocol:) lezen.

Waarom DCC? Voor mijn zelfbouwcentrale ben ik van plan de lokomotieven aan te sturen met MM en Mfx (3 rail) en de wissels, seinen met DCC op een appart kanaal (zonder booster). Dit gaat sneller en geeft minder fouten.


Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 05 maart 2013, 16:57:23 pm
Enkele updates waar ik mee bezig ben:

-Een S88 bus Master,  een testje voor mijn zelfbouwcentrale. Deze µC wekt zelf de signalen van de S88 bus (10kHz) op en stuurt de ingelezen data door naar 32 LED’s. Een zeer simpel projectje, en het werkt.

-Een S88 bus volger, ik kon er geen andere benaming voor vinden….  Deze µC leest mee de S88 bus signalen van en naar de centrale, en kan zodanig ingesteld worden dat hij een bepaalde reeks van 16 à 32 bits er uit pikt en doorstuurt naar LED’s. Het invoeren van welke reeks van 16 à 32 bits kan eenvoudig ingesteld worden met een drukknop. De EEPROM onthoud deze instelling.

-Stroomdetectie met µC voor 2x8 ingangen. Principe razendsnel A/D conversie uitvoeren gemeten bij een spanningsval over één diode. Daarbij rekening houdende mat negatieve polariteit digitaal signaal, en ruis met hoge en lage frequentie en energie. Op de simulator werkt dit al, praktisch is dit nog iets anders. Ik zoek nog een hoog energetische stoorbron… :-\ Later meer hierover.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 05 maart 2013, 23:10:57 pm
Een hoog energetische stoorbron ? Een TL lamp !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 maart 2013, 11:10:35 am
...Ik zoek nog een hoog energetische stoorbron… :-\  ...

12V autobatterij, oude ontstekingsspoel met aan de hoogspanning een lange draad en primair een relais ertussen die zichzelf telkens onderbreekt!  Relais gaat wel niet lang mee en het duurt niet lang of de buren komen bellen dat er niets meer werkt  8) 8) 8)
Wel een 'hoog energetische stoorbron'  ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 08 maart 2013, 21:52:20 pm
Zo een piezo-ontsteker voor gasvuren.
Ideaal om allerlei microprocessor (of digitaal) gestuurde electronica te laten crashen indien niet voldoende emc beveiligd
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 11 maart 2013, 21:53:39 pm
Weer een klein stapje verder voor mijn zelfbouwcentrale. Een NEW Marklin Motorola protocol generator.  Voorlopig nog maar voor 1 lok aan te sturen. Het adres is instelbaar met kleine schakelaars (zoals vroeger op oude MM loks) Het licht en vier functies stuur ik ook mee door. Het eerste wat ik hiermee ga doen is een pendelautomaat maken. Een digitaal treintje over en weer laten rijden tussen 2 stations met zachtjes optrekken en afremmen. Detectie via een S88 bus, deze was al eerder getest.

De werking MM generator zelf is voor het grootste deel gebaseerd op de PWM module in de PIC µC. De hardware hiervan regelt zelf de pulsperiode en pulsduur. Het enige wat de software moet doen is de volgende bit klaarzetten (18 bit schuifregister).

(http://users.telenet.be/RedDeBist/MBAAN/NEW MM GENERATOR.PNG)

De code volgt als ik de pendelautomaat af heb, en eens gefilmd heb…

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 11 maart 2013, 22:26:12 pm
...Ik zoek nog een hoog energetische stoorbron… :-\  ...

12V autobatterij, oude ontstekingsspoel met aan de hoogspanning een lange draad en primair een relais ertussen die zichzelf telkens onderbreekt!  Relais gaat wel niet lang mee en het duurt niet lang of de buren komen bellen dat er niets meer werkt  8) 8) 8)
Wel een 'hoog energetische stoorbron'  ;)

Of een ouderwetse mobilette...
--> Hoogspanningsbron met een autobougie --> vonken storen meters ver!!

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 maart 2013, 22:36:39 pm
Geert, via PWM je signalen opwekken...  Eenvoudiger kan bijna niet maar je moet er wel op komen...
Mijn probleem in 'eigen-centrale-denkfase' was om genoeg processortijd over te houden om één en ander te regelen maar ik ging de pulsen softwarematig opwekken en dan hield ik enkel nog wat tijd over gedurende de 'lange pauze'.  Met PWM hou je dus veel vrije tijd over.

Interruptgestuurd?  Na je PWM periode een INT om de volgende bit te sturen?  De pauze tussen de pulstreinen en de 'lange pauze' ook via PWM?


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 12 maart 2013, 06:47:07 am
Yep Peter, de pauze is gewoon 5 keer geen puls doorsturen door dezelfde PWM.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 maart 2013, 13:57:18 pm
Het is zo ver…

Na jaren experimenteren heb ik mijn eerste PIC µC invalide gemaakt.  :(

2 uitgangsmodules werken  niet meer. Tis te zeggen ze schakelen niet meer uit tussen 0 en 5V.

En ik heb ze al redelijk mishandeld.  Zoals de plus en min voedingsspanning gewisseld, warm dat ze dan worden.... Alle uitgangen 13 mA laten geven alle 32 stuks, de µC (die ik gebruik) kan maar 100mA totaal leveren! Een min op een uitgang gezet die 5V leverde enz…

Maar 220V rechtsreeks op een uitgang daar heb ik ze nu mee geveld. (overigens dit was niet de bedoeling  :-[)

En toch heb ik zonet getest dat de ingangsmodule van deze 2 pinnen het niet begeven hebben, en zo dus nog bruikbaar zijn.

Het is maar om aan te tonen het zijn sterke beesten die µC


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 maart 2013, 14:08:13 pm
Hoe doe je dat? 230V op een µC? :o
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 22 maart 2013, 14:13:30 pm
Hoe doe je dat? 230V op een µC? :o
Gewoon, je neemt twee draden en stopt ze in het stopcontact en...  :o  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 maart 2013, 14:15:54 pm
Hoe doe je dat? 230V op een µC? :o
Gewoon, je neemt twee draden en stopt ze in het stopcontact en...  :o  ;D

Het is even buiten onze hobby om, ik gebruik µC ook om triacs aan te sturen voor dimmers enz...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 28 maart 2013, 14:30:57 pm
De S88 master en S88 bus volger is volledig afgewerkt en getest. Nu eens verder gaan denken over een pendelautomaat voor digitale treinen.

(http://users.telenet.be/RedDeBist/MBAAN/S88master.JPG)
foto: S88 master


(http://users.telenet.be/RedDeBist/MBAAN/S88volger.JPG)
foto: S88 bus volger

Uitleg, schema's en ASM code zie hier (http://users.telenet.be/RedDeBist/MBAAN/S88 terugmelder.htm)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 31 maart 2013, 22:24:00 pm
Wellicht wat overkill, maar had voor mijn eindwerk een paar extra 16F887's aangekocht. Die dus gebruikt voor een projectje.
Iemand had mij gevraagd of ik een sturing kon maken voor zijn driewegwissel, die aan de uitrit van een schaduwstation ligt. Met een druk op de knop moest de wissel goed staan en de trein vertrekken. Inclusief terugmelding met leds.


Links de 4 BD 679's voor de wissels, achteraan in het hoekje de relais voor het DCC signaal. Achter de µC nog wat 5 & 12 volt spanningsregelaars en voedingselektronica...
Nu het programma nog, maar moeilijk mag dat niet zijn.
(http://www.treinbaanrian.be/IMG_0091.JPG)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 april 2013, 15:38:35 pm
Wellicht wat overkill, maar had voor mijn eindwerk een paar extra 16F887's aangekocht. Die dus gebruikt voor een projectje.


overkill? bwa nee, als ik op een terras een Duvel bestel ben ik meer kwijt dan wat een 16F887 kost.  :P

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 01 april 2013, 16:48:45 pm
Wellicht wat overkill, maar had voor mijn eindwerk een paar extra 16F887's aangekocht. Die dus gebruikt voor een projectje.


overkill? bwa nee, als ik op een terras een Duvel bestel ben ik meer kwijt dan wat een 16F887 kost.  :P

Geert


Geert , die pendelautomaat interesseert  me heel veel. Laat iets weten wil je ? Thx
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 april 2013, 18:42:06 pm
[

Geert , die pendelautomaat interesseert  me heel veel. Laat iets weten wil je ? Thx

DCC of MM?

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 01 april 2013, 20:14:03 pm
[

Geert , die pendelautomaat interesseert  me heel veel. Laat iets weten wil je ? Thx

DCC of MM?

Geert


MultiMaus 3 . Maar iets begrijp ik niet in je vraag Geert want MM3 is toch een DCC protocol ? Dat bedoel ik met "je vraag niet begrepen" Geert.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 april 2013, 20:30:49 pm
Voor een pendelautomaat voor digitale treinen heb je geen centrale, MSI, MSII, Ecos,  Multimaus of wat dan ook nodig. De vraag die ik stelde is welk protocol je graag wil,  DCC of MM (Marklin Motorola).  Mfx, daar ben ik nog niet aan toe.  :)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 april 2013, 15:57:46 pm
Pendelautomaat is weer wat verder uitgewerkt. Het is eigenlijk al geen pendelautomaat meer geworden in de strikte zin dat deze enkel maar één lok heen en weer laat rijden.

Het automaatje kan (voorlopig) 4 digitale loks aansturen, 8 servouitgangen (voor wissels), 8 digitale uitgangen (seinen) 14 terugmeldingen (voorlopig massadetectie, maar ik gebruik de analoge ingangen om zo stroomdetectie te kunnen uitvoeren). Er zitten ook nog wat timers in verwerkt voor tijdsafhankelijke toepassingen.

De programmering is sequentieel zoals bij een PLC  en gebeurd via de PC met hypertrm.exe rechtstreeks in de EEPROM van de µC.

De code kan er bv. zo uitzien en wordt omgezet naar een 2byte opcode.

START L1 +10          als start knop  actief dan krijgt LOK1 snelheid +10 (+ geeft de richting aan)
M2  L2 F1ON            als terugmelder 2 actief dan functie 1 LOK2 ON (bv. start geluid)
M2  B1 ON                dezelde terugmelder M2  zet dan ook binaire uitgang 1 ON (bv. sein groen)
M2  T1 5                   dezelde terugmelder M2 kan een timer starten voor 5seconden
T1  L2 -5                   als timer 1 afloopt, dan LOK2 snelheid -5 (rijd achteruit)
M3  L1+1                  als terugmelder 3 actief dan vertraag LOK1 tot snelheid +1
M4  L1+0                  als daarna terugmelder 4 actief dan stop LOK1
M4 S1 100              terugmelder M4 zal ook servo1 (wissels) even pulsen laten uitsturen van 1ms
                                 (100=1ms; 200=2ms, range=alles tussen  50-250)
M4 L3 L ON               terugmelder zal dan ook L3 zijn lichten aan doen
M4 T1 10                  M4 zal ook timer 1 herstarten voor 10s
T1 L3 F2 ON
T1 L3 +14
enz... met een max van 125 lijnen

Het enige waar je moet voor zorgen is dat op het einde van de code je LOK’s terug in start toestand staat. Is de startknop nog steeds actief, dan herhaald heel het program zich.


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: argilla op 22 april 2013, 16:33:51 pm
Voor een pendelautomaat voor digitale treinen heb je geen centrale, MSI, MSII, Ecos,  Multimaus of wat dan ook nodig. De vraag die ik stelde is welk protocol je graag wil,  DCC of MM (Marklin Motorola).  Mfx, daar ben ik nog niet aan toe.  :)

Geert



Geert DCC   ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 02 mei 2013, 22:31:59 pm
Waar zijn we nu mee bezig?  Bandwerk!

Als je servo's aanschaft, moet je ook decoders (http://www.digital-bahn.de/bau_servo/sandei.htm) hebben:

(http://www.pctoytoy.be/2013/20130502_1.jpg)

20 servodecoders (4 had ik er voorheen al gebouwd).  9 heb ik er binnenkort al nodig.

Bij de bestelling van enkele onderdelen niet goed opgelet en de Schottky-diodes bleken SMD te zijn  :(.  Een diode vastgenomen in een krokodilleklemmetje en een bolleke soldeer op gedaan:

(http://www.pctoytoy.be/2013/20130502_2.jpg)

Gelukkig had ik nog plek onderaan de print om de diodes te monteren:

(http://www.pctoytoy.be/2013/20130502_3.jpg)

De decoders?

- voeding naar keuze: digitale spanning - 16V AC hulpspanning - 5V DC hulpspanning
- servovoeding via transistor uitschakelbaar
- servostap = 8µs
- servo-curve grafisch programmeerbaar in 100 stappen
- digitaal signaal optisch gescheiden van de voedingsspanning
- puls in te stellen van 0.4ms tot 2.4ms
- 4 digitale adressen per servo (tot 4 curves per servo programmeerbaar)
- kostprijs?  moet ik nog berekenen...

Een groot deel van de printen bevat 2 servodecoders met gemeenschappelijke voeding en gemeenschappelijke optocoupler voor het digitale signaal.  Eén printje heb ik uitgevoerd met druktoetsen om eenvoudig de minimum- en de maximumuitslag en de adressen te kunnen programmeren.

De decoder is geen eigen ontwerp!  het is een eigen interpretatie van het origineel ontwerp van Sven Brandt (http://www.digital-bahn.de/).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 02 mei 2013, 22:41:02 pm
Eerst m'n eigenbouw voeding afwerken, en dan servo's testen. Erg moeilijk kan dat niet zijn, maar voornamelijk µs delay programmeren lijkt me met mijn 0-kennis van C in flowcode moeilijk (flowcode ondersteund delays van (milli)seconden). Ga eens moeten uitzoeken hoe dat moet. Ik geloof dat je blokjes eigen geschreven C-code kunt invoeren. Wat is het commando dan?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 02 mei 2013, 22:47:55 pm
...en dan servo's testen. Erg moeilijk kan dat niet zijn...

Let op!  Servo's zijn ondertussen al 'vintage' elektronica (de interne sturing is nog steeds dezelfde als die van +30 jaar geleden) en ik vergelijk ze dan ook graag met ervaren vrouwen: ze kunnen verdomd nukkig zijn   ::) ::) ::)

Flowcode: geen enkele ervaring mee...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 03 mei 2013, 10:09:22 am
Eerst m'n eigenbouw voeding afwerken, en dan servo's testen. Erg moeilijk kan dat niet zijn, maar voornamelijk µs delay programmeren lijkt me met mijn 0-kennis van C in flowcode moeilijk (flowcode ondersteund delays van (milli)seconden). Ga eens moeten uitzoeken hoe dat moet. Ik geloof dat je blokjes eigen geschreven C-code kunt invoeren. Wat is het commando dan?

Ik heb in C (later C++) geprogrammeerd en kan me herinneren dat ms-tijden accuraat meten niet zo simpel was...
Daarom een vraag : heb je echt een resolutie nodig die beter is dan ms ?

Erik

Ik ben maandag terug thuis en zal eens kijken : ik heb nog een volle doos C materiaal. Boeken ed. die ik toch niet meer gebruik. Kiala ?

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 03 mei 2013, 11:16:19 am
Wil je een servo met een µC aansturen dat deze redelijk vloeiend overgaat, dan werk je met tijden met een resolutie van +-10µs. Nog kleiner kan ook maar dan kom je al dicht in de buurt van de instructietijd van de µC.  (als je werkt met de interne RC kring voor de klokfrequentie) je moet eigenlijk optimaal gebruik maken van de interne timers en de interrups. Dan werk je best in assembler (machinetaal) of een programmeertaal die speciaal ontworpen is voor die µC, zoals JAL en HI-TECH C  voor PIC µC.


@Peter: Hoe reageert de servo als je de voedingsspaning op heel de schakeling zet?
en hoe reageert de servo als je over de servo voedingspanning (in jou geval massa) zet?

en bijkomend, onthoud de µC na spanningsuitschakeling te laatste stand van de servo?


daar ben ik wel benieuwd naar.


Ik heb eens naar de HEX code gekeken van je µC program, maar daar geraak ik niet aan uit  :)

Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2013, 11:41:42 am
Hoe reageert de servo als je de voedingsspaning op heel de schakeling zet?

Bij het inschakelen van de voeding hoor ik een beetje gezoem in de servo (geen bruuske bewegingen!).


hoe reageert de servo als je over de servo voedingspanning (in jou geval massa) zet?

Daarvoor zou ik de transistor moeten overbruggen, nog niet gedaan.

en bijkomend, onthoud de µC na spanningsuitschakeling te laatste stand van de servo?

Ik vermoed van niet: na het uitschakelen van de voeding de servo manueel verdraaid en dan terug voeding aan: servo blijft op de manueel gedraaide positie staan.

Ik heb eens naar de HEX code gekeken van je µC program, maar daar geraak ik niet aan uit  :)

 :) :) :)

Je moet wel eens goed zoeken op de site van Sven Brandt (http://www.digital-bahn.de/home.htm), maar alles is er te vinden.  Zelf de source in ASM:
http://www.digital-bahn.de/develop/source.htm (http://www.digital-bahn.de/develop/source.htm). 
Gedaan met warm water uitvinden  ;).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 03 mei 2013, 11:44:53 am
Ik geef Geert 100% gelijk.
Er is een verschil tussen tijd nauwkeurig meten en het sturen van een puls...
Dit laatste kan veel korter zijn.

Erik
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 03 mei 2013, 11:51:00 am
ASM codes gevonden, het is uit zulke codes dat ik leren programmeren heb en nog steeds bijleer. :)

bedankt,

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 03 mei 2013, 22:14:22 pm
Ben net van forum verhuisd en zie net dit topic.
Voor diegenen die het interesseert, ik heb al m'n C-rail wissels uitgerust met goedkope servo motoren, deze zijn veel betrouwbaarder dan de originele solenoide aandrijvingen.  Met één PIC 16F628 stuur ik 8 servos aan.  Ik laat de wissels in een vloeiende beweging (ong. 1.5 à 2 seconden) overgaan.  Ik gebruik hiervoor voornamelijk timer interrupts.
Hieronder het zelfgemaakte printje dat ik gebruik om m'n servos aan te sturen (links op de foto):
(http://i1236.photobucket.com/albums/ff460/Sattrickske/ModelRailroad/EOS5D-101-4965.jpg)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2013, 22:18:40 pm
Ondertussen al de weg gevonden  ;)


En zitten 'priemelen' met SMD'kes.  Ik pas  :o :o :o

Projectbeschrijving?  We hebben hier nogal graag 'uitgebreide beschrijvingen' (lees broncodes  ;) ).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 03 mei 2013, 22:41:12 pm
Kan je ook met gewone componenten hoor!
Elektronisch schema:
(http://i1236.photobucket.com/albums/ff460/Sattrickske/ModelRailroad/servo-controller_zps7555649d.png)

De bron code in C wou ik als bijlage toevoegen, maar 'k krijg steeds volgende melding:
"De uploadmap zit vol. Probeer een kleiner bestand te uploaden en/of stel de beheerder op de hoogte."

Hoe kan ik bestanden opladen (het C bestandje is 8Kb)?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2013, 22:49:42 pm
...Hoe kan ik bestanden opladen (het C bestandje is 8Kb)?

Patrick: PM!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 03 mei 2013, 22:59:06 pm
En hier is dan de broncode:
C code servocontroller (http://patrickleyman.be/projects/modelrailroad/software/servocontroller/servo.c)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2013, 23:12:45 pm
Patrick,

Je schema een grondig bekeken: de voeding van de servo's is gemeenschappelijk met die van je PIC: wat met van die 'nukkige' servo's die enorme bokkesprongen maken als ze hun puls en spanning gelijktijdig krijgen?

We zijn met een paar mensen (op dit forum) voorstander van 'voeding-van-de-servo-via-transistor-schakelen'.  Graag jou ervaringen/mening.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 03 mei 2013, 23:24:25 pm
Die worden meteen door de PIC terug op hun plaats gebracht...
Elke positiewissel wordt in de EEPROM opgeslagen en bij het opstarten van de hele handel gaan de servos effe alle kanten uit.  Maar de PIC brengt ze meteen terug naar hun vorige toestand.  Dat heeft meteen als voordeel dat je baan altijd terug in de toestand komt te staan als wanneer je de stroom uitgeschakeld hebt.

Dat servos effe wild springen kan bij mij niet echt kwaad omdat mijn servos niet sterk genoeg zijn om m'n wissels te beschadigen als te ver zouden draaien.

De oplossing met transistoren heb ik ook effe aan gedacht, maar ik vond ze overkill en bovendien het kost je minstens een I/O poort op je µC.

Hieronder een foto van m'n servo constructie:
(http://i1236.photobucket.com/albums/ff460/Sattrickske/ModelRailroad/EOS5D-101-5258.jpg)
De alu houder wordt met 2-comp epoxy op de wissel gelijmd.  Zo zitten ze nu al een dik jaar op m'n baan zonder problemen te geven.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2013, 23:32:17 pm
...Dat servos effe wild springen kan bij mij niet echt kwaad omdat mijn servos niet sterk genoeg zijn om m'n wissels te beschadigen als te ver zouden draaien...

Maar om deurtjes aan te sturen...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 03 mei 2013, 23:41:57 pm
Yep dan heb je een probleem!
Oplossing is dan inderdaad om een transistor te gebruiken om eerst de positie pin van pulsen te voorzien en dan pas de voeding in te schakelen.  Aangezien de servos serieus wat stroom verbruiken, zou ik eerder voor een MOSFET opteren ipv van een transistor.  MOSFETs hebben een kleinere spanningsval (0.2V) over hun source en drain pinnetjes; transistors zitten tussen de 0.3 en 0.7 tussen de collector en emitter dus gaan ze sneller heet worden bij veel stroomverbruik.

Om je servos koest te houden moet je inderdaad eerst het signaal activeren alvorens de spanning erop te zetten.  Dit doe dus best met één MOSFET per servo; je kan alle MOSFETs tegelijk aansturen met één I/O pin van je µC.  Op voorwaarde dat je alle signalen tegelijk kan uitsturen; als dit niet kan dien je elke MOSFET afzonderlijk aan te sturen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: bollen neus op 05 mei 2013, 11:31:31 am
Zou dit systeem waar jullie het over hebben ook bruikbaar kunnen zijn voor grotere schalen?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 05 mei 2013, 11:37:28 am
Ga je de lichten met een µC sturen? Ik vrees dat je berichtje op de verkeerde plaats is terechtgekomen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 11:47:42 am
Zou dit systeem waar jullie het over hebben ook bruikbaar kunnen zijn voor grotere schalen?
Microcontrollers zijn universeel inzetbaar.  Of het nu gaat om wisselaandrijvingen, binnenverlichting, scenery, ... het maakt allemaal niet uit.  Als je ergens een digitaal signaal kan oppikken, kun je met een microcontroller dat signaal decoderen en je 'randapparatuur' (motoren, leds, mp3-spelers, ...) aansturen.  Naast de microcontroller bouw je soms wat extra elektronica die de taal spreekt van het ding dat je wil aansturen.
De schaal doet er niet toe; hoe groter de schaal, des te gemakkelijker om in te bouwen, omwille van de beschikbare ruimte.

Ga je de lichten met een µC sturen? Ik vrees dat je berichtje op de verkeerde plaats is terechtgekomen...
En waarom zou je lichten niet via een µC sturen?  Werkt perfect en kan je heel leuke effecten (dimmen, flikkeren, ...) mee bekomen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 05 mei 2013, 12:09:45 pm
Ik stuur er zelfs triacs mee om 220V te schakelen, maar dit is een andere hobby...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: bollen neus op 05 mei 2013, 12:27:56 pm
Dank voor de antwoorden. ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 13:33:15 pm
Ik stuur er zelfs triacs mee om 220V te schakelen, maar dit is een andere hobby...
Bij mij thuis regelen ze thermostaten van de verwarming, de temperatuur van de buildplate van m'n 3D printer, m'n hele modelbaan...  Ik gebruik die dingen nagenoeg overal; als ik microcontrollers bestel, is het meestal per 100!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 mei 2013, 17:14:43 pm
Yep dan heb je een probleem!
...Oplossing is dan inderdaad om een transistor te gebruiken om eerst de positie pin van pulsen te voorzien en dan pas de voeding in te schakelen.  ...
Ben eventjes minder intensief het forum aan het lezen, maar kom deze reactie tegen, die me wel interesseert:
Hoe pas ik best Geert's oplossing aan, om de brute uitwijkingen te vermijden?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 18:12:21 pm
Ben eventjes minder intensief het forum aan het lezen, maar kom deze reactie tegen, die me wel interesseert:
Hoe pas ik best Geert's oplossing aan, om de brute uitwijkingen te vermijden?
Ik vermoed dat je het over deze schakeling van Geert hebt:
(http://users.telenet.be/RedDeBist/MBAAN/16 servos met potmeter.JPG)
Het probleem hiermee is dat de µC en de servos ongeveer gelijktijktijdig stroom gaan krijgen.  Nu, door de zware elco voor de servo voeding op Geert's schema, zou het goed kunnen dat de servos pas een hele tijd na de µC stroom gaan krijgen. @Geert kan je dat bevestigen?  Als dit zo is hoef je weinig te doen, enkel ervoor zorgen dat je I/O pinnetjes voor servo 1-16 op tijd hun pulsjes uitsturen.  Als je dus eerst de sturing pinnetjes van de nodige pulsen voorziet en dan pas de voeding van de servos inschakelt, zullen deze zich zeer netjes gedragen.

Als de stroom op servos komt vóór dat de puls signalen er zijn, gaat deze effe wild alle kanten uitgaan.  Een bullet-proof oplossing is de voeding van de servos te schakelen via een MOSFET.  Hierbij dien je rekening te houden met de totale stroom die erdoor gaat gaan.  De LM7805 rechtsboven levert 1.5A, dus je MOSFET dient hetzelfde aan te kunnen.  Ik zou de massa naar de servos onderbreken (de blauwe draad naar de servos rechtsboven) en er n-channel MOSFET tussen steken (source aan de massa leggen, de drain aan de servos) en de gate ervan kan rechtstreeks op een I/O pin van de µC.  Dus nu bepaalt de µC wanneer de servos stroom gaan krijgen (natuurlijk wel aanpassen in de software).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 mei 2013, 18:20:35 pm
Patrick, dat betekent dan: ofwel een uitgang van de µC opofferen, ofwel een timer (vb 555) op de gate?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 18:27:25 pm
Patrick, dat betekent dan: ofwel een uitgang van de µC opofferen, ofwel een timer (vb 555) op de gate?
Inderdaad!
Ik zou gaan voor de uitgang (of ingang) op te offeren.  Persoonlijk zou ik de 16 ingangen vervangen door een matrix van 4x4 (4 rijen en 4 kolommen), dan heb je maar 8 ingangen nodig voor de schakelaars en komen er dus 8 I/O poorten vrij.  Je hebt dan wel een beetje speciale software nodig om die matrix te 'scannen', maar die is op zich niet zo moeilijk.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 05 mei 2013, 18:29:14 pm
Je was mij net voor, ik zat ook met het idee om de knoppen in een matrix te steken. Heb er nog geen ervaring mee, maar dan win je een hele poort op je µC.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 18:45:33 pm
Inderdaad, vanaf 4 knoppen win je...
Het gebruik ervan is niet zo moeilijk: staat hier (http://www.learningaboutelectronics.com/Articles/How-does-a-matrix-keyboard-scanning-algorithm-work) mooi uitgelegd.  Dan hoef ik hier geen hele boterham neer te schrijven ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 mei 2013, 19:08:48 pm
Matrix lijkt inderdaad aantrekkelijk, omdat je  aansluitingen vrij maakt, maar uitsluitend in de veronderstelling dat je slechts één schakelaar tegelijk sluit.  Stel dat je er twee sluit, is het niet meer eenduidig te bepalen welke schakelaars gesloten werden.

Stuur je manueel aan, mag je veronderstellen dat aan de voorwaarde voldaan is.
Worden de ingangen aangestuurd door andere electronica, kun je wel in problemen geraken.
Dan blijft wél de optie om de matrix even te vergeten, en één uitgang te gebruiken om de mosfet aan te sturen.

Wordt de aansturing van Geert's controller kaart electronisch gedaan via één component, kun je met vier poorten de 16 servo's éénduidig aansturen.

Opties genoeg.  De mosfet en matrix verhogen de mogelijkheden.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 05 mei 2013, 19:13:26 pm
In reactie 366 van dit draadje heb ik mijn µC driewegwisselsturing, en die bedien je met drie knoppen. Als je er bij ongeluk 2, of drie induwt dan doet het boeltje gewoon niets. Ik weet niet of de servo-sturing in staat is om meerdere knoppen tegelijk in te lezen?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 mei 2013, 19:16:57 pm
... Ik weet niet of de servo-sturing in staat is om meerdere knoppen tegelijk in te lezen? ...
Die servo sturing behandelt de 16 ingangen los van mekaar.
Maw, sluit je er drie, worden betreffende drie servo's in gang gezet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 19:45:26 pm
Matrix lijkt inderdaad aantrekkelijk, omdat je  aansluitingen vrij maakt, maar uitsluitend in de veronderstelling dat je slechts één schakelaar tegelijk sluit.  Stel dat je er twee sluit, is het niet meer eenduidig te bepalen welke schakelaars gesloten werden.
Klopt niet, zelfs met een matrix kan je bepalen welke toetsen gelijktijdig ingedrukt werden.  Alles hangt er van af hoe goed je software geschreven is.  Ik zal 't precies toch moeten uitleggen, 'k had gehoopt dat link duidelijk genoeg was, maar soit...
Stel je hebt x kolommen en y rijen, de kolommen staan als output en de rijen met pull-ups staan als input geconfigureerd.  Elke toets/schakelaar verbindt één rij met één kolom (matrix).
De kolommen staan initieel allemaal op '0'.  Als alle toetsen onberoerd zijn, zullen bijgevolg alle rijen op '1' staan (pull-up, remember).  Het scan algorithme draait gewoon rondjes over de rijen, van zodra er eentje niet op '1' staat springt ie naar subroutine die de output van de kolommen doet variëren (loopje).  Elke kolom wordt nu effe alleen op '0' gezet terwijl de anderen op '1' staan, als de rij nu op '0' staat heb je een ingedrukte toets gevonden en ga je verder met de volgende kolom.  Als alle kolommen afgehandeld zijn, ga je verder met de volgende rij en herhaal je de hele procedure.
Dit scan algorithme heeft een aantal varianten.  Zo loop ik bv. niet over de rijen, maar ik gebruik hiervoor een hardware interrupt, het loopen over de kolommen dien je wel te doen om te scannen welke toets(en) op deze rij ingedrukt werden.
Er bestaan nog andere -minder goede- algorithmes die stoppen van zodra een toets gevonden hebben; en die kunnen dan natuurlijk geen meerdere toetsen vinden.  Dus uitkijken hoe je je software schrijft.

Bottomline: je kan wel degelijk achterhalen of er toetsen gelijktijdig ingedrukt werden op een matrix.  Je toetsenbord op de PC gebruikt een identieke methode...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 mei 2013, 20:02:42 pm
Oeps!  Te snel gereageerd, en de tekst onvoldoende gelezen  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 05 mei 2013, 20:14:36 pm
Oeps!  Te snel gereageerd, en de tekst onvoldoende gelezen  ::)
Geen probleem overkomt mij ook dikwijls.  En hopelijk helpt anderen ook wat vooruit ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 06 mei 2013, 07:53:02 am
Straks nog eens kijken hoe de servo’s reageren als ik deze op spanning zet. Ik probeer nu mijn dag door te komen op het werk...

Het servo verhaal is bij mij al een tijdje geleden, maar ik herinner mij niet dat deze hevig begonnen te gedragen als je deze op spanning zet. Het kan zijn dat de servo’s die ik gebruik anders zijn (regelbereik tussen 0.5 en 2.5ms) of dat nu net de voeding voor de servo’s niet krachtig genoeg is om al de servo’s te laten uitwijken als de spanning er op komt? Hier en daar lees ik dat een weerstand van 10k tussen referentiepuls en de massa naar de servo ook helpt?

Tot straks,

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 mei 2013, 19:15:58 pm
Als tussendoortje: een poging om een dag-nacht verlichting te maken.

Een RGB Led-strip en een witte Led-strip.  Via 4 PWM sturingen alle ledstrips onafhankelijk van elkaar aansturen via I2C (één master zorgt voor de effecten - momenteel de PC).

Eens in de kast gekeken en nog enkele 18F2550's gevonden.  Deze controller bevat 2 hardware PWM's en hardware I2C.  Programmacode (JAL) is slechts enkele regels lang om via I2C de PWM's te sturen (via interrupt - de eigenlijke programmalus doet niets behalve door een ledje te kennen geven dat er een I2C opdracht is ontvangen).
2 keer zo'n controllertje en ik kan de RGB en de witte ledstrip aansturen.

Ook begonnen met een PC interface (in Delphi) om één en ander 'grafisch' in te stellen/aan te passen/te regelen/te programmeren.  Communicatie naar de controllerkes via de Bus Pirate (http://dangerousprototypes.com/bus-pirate-manual/).

Zo'n 18F2550 is wel een beetje teveel van het goede voor dergelijk eenvoudig schakelingetje maar ze lagen in de kast klaar voor gebruik.

PWM met 10 bits resolutie.

De eerste resultaten staan me wel aan.

Bedoeling is om alles op mijn JAL pagina te zetten en de evolutie hier te laten zien.

Een 'teaserke' van de grafische interface (schuiverkes voor de RGB en witte kleur - bovenaan resultaat RGB kleur - I2C adressen en kanalen en onderaan de I2C communicatie via een terminalvenster):

(http://www.pctoytoy.be/2013/20130513_1.jpg)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 mei 2013, 21:53:53 pm
Toch mooi die µC en wat je er mee kunt, en ook zo eenvoudig via JAL. En wat ligt daar nog allemaal in die kast van jou... 

Ik heb geprobeerd op de schuifbalk van je tekening naar omhoog te scrollen voor de code, maar dat lukte niet   :D

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 01 juni 2013, 09:30:11 am
Dit (grote) topic is nu verplaatst naar een nieuwe specifieke microcontroller-rubriek
Helaas kan ik dit draadje niet splitsen in de verschillende verhaallijnen  :'(

Er zitten nogal wat projecten door elkaar te lopen in dit topic, in de nieuwe rubriek kunnen we elk project een eigen verhaallijn geven.
Voor zij die dit willen doen: Het lijkt nuttig om je project dat je hier beschreef opnieuw op te starten in een apart topic in deze rubriek.

Dit topic zelf zou ik alleen nog gebruiken voor korte bedenkingen. Misschien is het zelfs een goed idee om dit topic af te sluiten ...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 augustus 2013, 10:00:54 am
Eindelijk is werk gemaakt van mijn zelfbouw centrale. De meeste bug's zijn er uit 'denk ik toch  ::) ' Nu bezig met hardware testen.  Als het ooit werkt, dan volgt er meer info en de asm code...

(http://users.telenet.be/RedDeBist/MBAAN/centrale.JPG)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 18 augustus 2013, 09:58:16 am
Geert,
Precies een centrale met een minimum aan componenten?  Wat gebruik ja als vermogenstrap?  En hoe ga je van je pulserende 5V DC naar 18 V AC?

Fluke 123: goe machien hé  ;)  ...En bijna onmisbaar voor dergelijke projecten.


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 18 augustus 2013, 20:51:06 pm
Peter,

het 0-5V digitaal signaal wordt met een vrij kanaal van een MAX232 omgezet naar een digitaal signaal tussen -10V en +10V. Hiermee stuur ik twee vermogentransistors aan nl. een TIP145 en zijn tegenhanger TIP142 via voorschakeltransistors. De +-18V komt van een regelbare LAB voeding met kortsluitbeveiliging.

(http://users.telenet.be/RedDeBist/MBAAN/booster.JPG)

Twee andere kanalen van de MAX232 dienen voor seriële communicatie met de PC. Maar dit software deel is nog niet af ... Het is eigenlijk de bedoeling dat heel de centrale werkt zonder hulp van PC.  En het feit dat de MAX232 het digitaal signaal ook nog eens inverteert, komt mij goed uit om stroomdetectie te doen via de middenrail van de sporen. Geen slijpwerk dus aan sporen.

Ik zal wel eens een ander draadje starten, want ik heb nog niet alles onder controle. En meedenkers zijn altijd welkom  ;)

Geert

edit, beetje meer verduidelijkt.


 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 augustus 2013, 23:55:01 pm
Nog een projectje, een digitaal pendelautomaat voor 4 NEWMM lok's. Proberen alles door 1 µC te laten uitvoeren. De PC dient enkel om deze in te stellen. Hierbij al een plattegrondje. Alles is al softwarematig getest, hardware matig ook , maar ik zit te sukkelen met de timing van het NEWMM formaat...



(http://users.telenet.be/RedDeBist/MBAAN/pendelautomaat.png)

Edit: voor zij die er iets aan hebben? de ASM (http://users.telenet.be/RedDeBist/MBAAN/pendelautomaat_v1p1.asm) code.

Edit2: Diverse loks kunnen over hetzelfde traject rijden. Ik bepaal welke lok mag vertrekken en/of moet stoppen.


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 augustus 2013, 10:51:32 am
Dergelijke sturing in slechts één controllerke?  Weinig 'speelruimte' vermoed ik...


...maar ik zit te sukkelen met de timing van het NEWMM formaat...

De timing is volgens mij net hetzelfde als bij het oude systeem.  Alleen worden de gegevens (snelheid, functies, ...) over verschillende blokken verdeeld.  Snelheid wordt meer verzonden dan functies. 

Aan de hand van deze uitgebreide uitleg (http://spazioinwind.libero.it/scorzoni/motorola.htm) heb ik een MM2 sniffer in elkaar geflansd (met als doel om ooit eens een geautomatiseerde lift/tafel) te bouwen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 augustus 2013, 18:20:46 pm
Dergelijke sturing in slechts één controllerke?  Weinig 'speelruimte' vermoed ik...

Geen probleem het digitaal signaal verloopt via de PWM modul, de rest is redelijk traag. De servo's kunnen enkel één voor één aangestuurd worden. Maar daar zorgt de software voor.


De timing is volgens mij net hetzelfde als bij het oude systeem.  Alleen worden de gegevens (snelheid, functies, ...) over verschillende blokken verdeeld.  Snelheid wordt meer verzonden dan functies. 

Aan de hand van deze uitgebreide uitleg (http://spazioinwind.libero.it/scorzoni/motorola.htm) heb ik een MM2 sniffer in elkaar geflansd (met als doel om ooit eens een geautomatiseerde lift/tafel) te bouwen.

Heb ik eerst ook zo uitgevoerd volgens deze link. Maar volgens deze link (http://www.heise.de/ct/Redaktion/cm/buch/digit_1.html) spreken ze over andere 'pauze' tijden.

we zien wel, het zal iets stom zijn zeker...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 27 augustus 2013, 18:14:23 pm
Hij rijd, Hij rijd  :)  :D ;D :P

Eindelijk kan ik met een µC zelf digitale treinen laten rijden. Het stomme, hiervoor, waarom het maar niet werkte was dat ik het adres omgekeerd doorstuurde.

Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 27 augustus 2013, 18:32:49 pm
Proficiat!

...Het stomme, hiervoor, waarom het maar niet werkte was dat ik het adres omgekeerd doorstuurde.

Op zo'n stom ding kan je lang zoeken...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 27 augustus 2013, 20:00:39 pm
Proficiat!

...Het stomme, hiervoor, waarom het maar niet werkte was dat ik het adres omgekeerd doorstuurde.

Op zo'n stom ding kan je lang zoeken...
En iedereen komt wel eens zo'n dingen tegen...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 01 september 2013, 13:59:00 pm
Met vééél microcontrollers bezig:
Doel is om zowat al de elektronica op mijn baan te vervangen

(http://www.meb.gerolf.be/sturing/bm/schaduw/in-out-overzicht.jpg)

Van links naar rechts:
 . 2 torentjes met algemene input en output (elk torentje = 128 logische poorten)
 - midden achteraan: flatgebouw in wording met 128 bezetmelders. Nog 3 op te bouwen plaatjes liggen er bij
 - er voor: sturing voor 4 servo's met sense-ingang
 - en tenslotte rechtsachter snelheidsregelaars (van drie snelheden - seinbeeld) naar PWM
      en rechtsvoor (met die lange groene connector) de centrale noodsturing

Bijlange nog niet klaar, nog heel wat controllers en plaatjes uit te testen
... maar 't is maar dat je weet dat ik ook nog met "iets" bezig ben  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 01 september 2013, 14:40:28 pm
Citaat
... maar 't is maar dat je weet dat ik ook nog met "iets" bezig ben

Serieus bezig zo te zien. Dat is een heel project Gerolf.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 01 september 2013, 14:44:26 pm
Slik ... Indrukwekkende flatgebouwen  ;)
Dat wordt een volledige ombouw van je baan : een serieus avontuur.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 september 2013, 16:12:05 pm
Inderdaad indrukwekkend...

Nog wat gevonden in één van mijn schuiven. Printconnectors voor flat cabel. Ideaal voor µC projectjes. Ik krijg die nooit op... Dus als je denkt er nodig te hebben laat maar weten, dan stuur ik er op. Voor Rian heb ik er al opzij liggen.

(http://users.telenet.be/RedDeBist/MBAAN/printconnectors.jpg)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 01 september 2013, 18:31:42 pm
Ik denk dat de voorraad bij Atmel uitgeput is, als ik dat zo zie :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 01 september 2013, 20:42:00 pm
Je flatcable-connectoren interesseren me zeker, Geert.
Die zullen nuttig zijn als ik mijn synoptische borden wil aansluiten  ;)

Ik denk dat de voorraad bij Atmel uitgeput is, als ik dat zo zie :D

Ik hoop van niet, want ik heb er nog heel wat nodig (maar heb ook al een voorraadje aangelegd  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 01 september 2013, 20:56:04 pm
Ook hier grote interesse, Geert !
Ze zouden van pas komen !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 01 september 2013, 20:58:14 pm
Ofwel heb je veel schuiven, of wel zijn ze erg groot, Geert ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 01 september 2013, 21:00:18 pm
Waarschijnlijk/hopelijk beide  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 04 september 2013, 10:16:05 am
Gerolf, die smd dingen, heb je die nog met de hand gesoldeerd? Of heb je een of ander systeem daarvoor? diy reflowsoldeerbroodroosteroven/heteluchtdink gebruikt? Hoe ging dat?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 04 september 2013, 10:24:06 am
Smd's zijn met de hand gesoldeerd.
Voor een 44pens-µC (TQFP) met 0.8 mm pitch nog nét haalbaar  :o
Baantjes goed voorvertinnen, eerst diagonaal twee pootjes vastzetten, en dan de rest.
Een reflow-oventje zou leuk zijn, maar heb ik (nog) niet.

@Geert: hééél erg bedankt voor de connectoren  8)  8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 04 september 2013, 11:23:29 am
Met vééél microcontrollers bezig:
Doel is om zowat al de elektronica op mijn baan te vervangen

 ...

Bijlange nog niet klaar, nog heel wat controllers en plaatjes uit te testen
... maar 't is maar dat je weet dat ik ook nog met "iets" bezig ben  ;)
Gerolf, sorry dat ik er even tussen kom met een heel algemene vraag (want µControllertalk gaat mij nog boven mijn pet). Jouw baan was dus al uitgerust met een elektronisch besturingssysteem, discreet neem ik aan. Nu vervang je alles. Wat win je met het nieuwe systeem? Wat zal jouw nieuwe systeem meer kunnen dan het vorige op het vlak van treinbesturing en rijgedrag?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 04 september 2013, 16:52:16 pm

@Geert: hééél erg bedankt voor de connectoren  8)  8)

Hopelijk ben je iets mee, Deze van Jean (SteamN) stuur ik op via de post, iets te ver met auto. Ik had ze al los in een enveloppe gestoken om naar de post te gaan, bleek dat de scherpe pinnetjes door de enveloppe staken. Dit kan ik de postbode niet aandoen als hij of zij deze brief  post. Morgen een tweede poging...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 september 2013, 13:05:46 pm
Gerolf, sorry dat ik er even tussen kom met een heel algemene vraag (...). Jouw baan was dus al uitgerust met een elektronisch besturingssysteem, discreet neem ik aan. Nu vervang je alles. Wat win je met het nieuwe systeem? Wat zal jouw nieuwe systeem meer kunnen dan het vorige op het vlak van treinbesturing en rijgedrag?
Mijn baan was inderdaad al voorzien van een bloksysteem (eigen ontwerp). Eigenlijk was (en is) mijn baan op dit moment niet meer dan twee grote lussen, waar pakweg 16 (2x8) treinen echter elkaar aan sjokken. Er is nog geen enkele wissel functioneel-actief.
Zie het draadje over schaduwstations en vooral "noodstop", daar is eigenlijk de aanleiding voor een grote switch ontstaan. Kort samengevat:
 - geduwde treinen (bvb TEE-treinstel met motor achteraan) lukt nu niet: Motordeel stopt voor het sein dat de kop juist "rood" heeft gezet.
 - noodstop: nu gebeurt dat bruusk, met soms "opstuiken" van een trein die daalt in een klimspiraal
 - opstarten na noodstop (hangt vooral samen met wisselsturing): stel dat een trein na noodstop stil staat op een wissel, en die wordt verzet bij het terug opstarten ...
 - door µControllers kan je ook de onderlinge communicatie van de "units" vereenvoudigen, en héél wat draad uitsparen
 - heel het "beslissingsdeel" - in eerste instantie voor een bloksysteem - wordt vooral software, weinig hardware (dus kleiner en goedkoper).
 - het zal daarna een pak gemakkelijker worden om schaduwstations, wisselstraten, ... te besturen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 05 september 2013, 13:43:36 pm
Gerolf, ik heb de twee draadjes eens doorgenomen, en ik moet toegeven: best interessante lectuur. Je staat voor een boeiende uitdagingen om je baan rijdend en bestuurd te krijgen met een eigen ontwikkeld systeem.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 06 september 2013, 20:27:54 pm
Heren, net zoals vele andere draadjes gebeurt er in dit forum weinig behalve "waar zijn we nu mee bezig". (*)

Nu is er veel dat in dit draadje staat dat eigenlijk een eigen draadje zou mogen zijn zodat de evolutie duidelijk is en niet tussen 20 andere dingen verloren geraakt. Hier zit veel interessant spul in dat reddeloos verloren is als informatie want nooit meer te vinden. Dit zijn nu 30 pagina's verloren blabla ipv 10 nuttige draadjes.

Het is echt veel interessanter als je voor je projectjes aparte draadjes aanmaakt.

(*) eigenlijk een ziekte van dit forum. Voor moppen kan me dat niet zoveel schelen, maar de rest van het forum is stilaan aan het afgleiden naar een hoog twitter-gehalte.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 06 september 2013, 21:53:08 pm
Johan,

Nieuw draadje opgestart

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 07 september 2013, 09:33:36 am
Ik zal ook nog wel aparte draadjes opstarten - als ik het verhaal wat passend krijg  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 oktober 2013, 20:52:35 pm
Het is me gelukt een Mfx decoder te maken in een PIC 12F683 µC. De bedoeling is om wagonverlichting met of zonder sluitlichten (wit/rood) mee aan te sturen.

Het principe is als volgt:

-Je zet een nog niet aangemelde loc op je baan samen met de wagons waarvan je de binnenverlichting en eventueel sluitlichten mee wil aansturen.

-De Mfx loc meld zich aan, richting centrale.

-De centrale zend naar die lok een uniek adres door.

-De wagondecoder(s) luisteren mee, en slaan dit adres op in hun EEPROM.

-Als de Loc het adres heeft doorgekregen, haal je deze van het spoor (gewoon handig, omdat we iets met de snelheid gaan doen, lees verder…)

-Nu kan je de binnenverlichting van de wagon instellen via de snelheid van de loc. Lage snelheid is weinig licht, veel snelheid is veel licht (PWM module µC voor de insiders…)

-Als je de wagon(s) nu ook van het spoor haalt, dan slaat deze ook de dimfunctie op.

-De sluitlichten kan je niet dimmen, maar ze weten wel of de wagon vooruit rijd (rood sluitlicht) of achteruit rijd (wit sluitlicht)

Nu nog deze schakeling uitvoeren op SMD technieken, dit is voor mij wel nieuw….

Wordt vervolgd in een nieuw draadje.



Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 16 oktober 2013, 21:59:05 pm
Hé da's mijn idee dat je gepikt hebt... (grapje, pik maar zoveel je wil hoor...)
Maar als dit de SMD versie is die je zoekt... http://forum.modelspoormagazine.be/index.php/topic,17344.0.html (http://forum.modelspoormagazine.be/index.php/topic,17344.0.html)

Deze is ook rond een PIC12F683 gebouwd en m'n laatste versie gebruikt voor één van de uitgangen de PWM van de PIC.  Mijn protocol is DCC en ook de snelheidsregelaar, maar dit zou perfect moeten werken voor jouw mfx versie.  Grootte: 20x12x6mm
Kan in theorie nog kleiner, als je eerst de chip programmeert en 'm dan pas vastsoldeert; maar ik kies ervoor om de chip pas te programmeren als ie op de print zit, dan ik evt. nog updates doorvoeren...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 16 oktober 2013, 22:35:37 pm
Nee Patrick, niet gestolen, wel geïnspireerd door jou smd schakeling. De basis is gelegd door GRAHAM GUTHRIE, ergens in 2008 of zo iets.

Mfx is wel totaal iets anders dan DCC of MM2. Heb je ooit al gehoord van stuffbits, fasekeering, CRC code, eigenlijk fout code (zie WIKIPEDIA) 

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 17 oktober 2013, 13:54:24 pm
Nee, ik grapte maar hoor over dat 'stelen'.  Alles wat ik hier post mag gerust 'gestolen' worden; als het iemand kan helpen, neem maar gerust...  Trouwens m'n PWM aansluiting heb jij me nog aangeraden als ik me niet vergis.

En ja hoor, ik ken mfx zelfs heel goed; ik heb ook zo'n Marklin CSII.  Maar tot nu toe hou ik m'n pollekes ervan af.  Ik wil later volledig DCC gaan rijden en de CAN-bus als drager gebruiken.  mfx is me iets teveel eigen aan Marklin naar m'n goesting.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 oktober 2013, 14:35:00 pm
Patrick, er zijn zelfs al PIC µC met hardware  CAN-bus, maar dit wist je al zeker  ;)

Iets anders,

Wat ik mij nu afvraag is of ik het mfx protocol uit de doeken mag doen op dit forum? Het protocol is wettelijk beschermd, als ik hier nu een elektronische schakeling werkend met dit protocol beschrijf, overtreed ik daar ergens een wet mee?

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 oktober 2013, 14:55:15 pm
ik denk dat zolang je enkel maar vermeldt dat je een schakeling hebt die het protocol kan begrijpen, je niks verkeerd doet.
Van het moment dat je echter de werking in detail beschrijft zou je inderdaad wel kunnen één of ander lijntje overschrijden.

Alhoewel, het feit dat jij het protocol hebt kunnen doorgronden wil zeggen dat het toch ook ergens "openbaar" beschreven staat , dus daar begint de grijze zone.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 oktober 2013, 14:59:30 pm
Dani,
De persoon die mij de uitleg van dit protocol overhandigde is ondertussen vermoord  :(

Is het goed dat ik jou naam vermeld ???

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 oktober 2013, 15:26:21 pm
Ik denk dat ik nog eens dit weekend het stof van m'n programmer zal blazen, als ik zie hoe actief jullie hier allemaal zijn :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 oktober 2013, 17:06:10 pm
Wat ik mij nu afvraag is of ik het mfx protocol uit de doeken mag doen op dit forum? Het protocol is wettelijk beschermd, als ik hier nu een elektronische schakeling werkend met dit protocol beschrijf, overtreed ik daar ergens een wet mee?

Je hebt het MFX protocol proefondervindelijk ontleed zoals hier (http://www.alice-dsl.net/mue473/mfxmenue.htm) en hier (http://www.skrauss.de/modellbahn/Schienenformat.pdf).  ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 oktober 2013, 17:55:23 pm
Klopt Peter, deze zijn mijn bronnen.  8)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 oktober 2013, 18:04:56 pm
Veel meer dan dat ben ik nog niet tegengekomen  :(
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 oktober 2013, 18:12:39 pm
Ik wilde eigenlijk de code toevoegen via : 'voeg code toe' op dit forum. Maar dat lukte niet? Meer dan 20000 karakters kreeg ik als foutmelding. Zal iets voor een nieuw draadje zijn.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 17 oktober 2013, 18:22:13 pm
Ik wilde eigenlijk de code toevoegen via : 'voeg code toe' op dit forum. Maar dat lukte niet? Meer dan 20000 karakters kreeg ik als foutmelding.

'voeg code toe' lijkt me eerder bedoeld voor een soort van HTML-code. Niet voor de sourcecode van een µC-programma  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 17 oktober 2013, 18:48:00 pm
Ik denk dat Geert de code tags wil zeggen:

[code]  en de sluitende met /
Maar als ik die toevoeg geraakt de site in de war. Alles tussen code tags wordt normaal niet omgezet dus hier kan ik rustig [quote][/quote] of  schrijven en het forum reageert daar niet op.
Lijnen gaan ook niet teruglopen zodat je héééél brede posts kan maken.

Maar dat er een beperking is van lengte kan ik wel aannemen. Opdelen in stukken/functies zou ik zeggen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 oktober 2013, 18:50:53 pm
En in code-modus neemt ieder karakter evenveel plaats in (om code mooi uit te lijnen).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 oktober 2013, 20:32:01 pm
@Havoc, daar zit toch een verticale scrollbar op?


 Zou ons forum de syntax kunnen herkennen van BV C? Op een ander elektronicaforum lukt dat allesinds.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 17 oktober 2013, 21:01:21 pm
Patrick, er zijn zelfs al PIC µC met hardware  CAN-bus, maar dit wist je al zeker  ;)
Inderdaad, er is al een resem onderweg uit het verre oosten... :D
Je hebt wel telkens nog een CAN-transceiver nodig.  En dan kan je kiezen,  een aparte CAN-controller die je over SPI met je µC laat praten, oftewel en PIC met een embedded CAN-controller.  Ik heb voorlopig voor beide opties gekozen; allebei eens testen en kijken wat uiteindelijk het eenvoudigst gaat werken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 17 oktober 2013, 21:03:52 pm
Zou ons forum de syntax kunnen herkennen van BV C? Op een ander elektronicaforum lukt dat allesinds.
Daarvoor dienen speciale plugins aan de forum software, te worden toegevoegd; dat zal iets voor de admins zijn...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 oktober 2013, 21:37:49 pm
Omdat er weer wat beweging is in dit draadje en vooral om Rian te stimuleren om zijn programmer boven te halen, mijn werk van deze avond:

(http://www.pctoytoy.be/2013/20131017_1.jpg)

Een universele led-decoder op basis van Sven Brand's Universeller LED-Dekoder (V2) (http://www.digital-bahn.de/bau_led/led.htm).  De enige aanpassingen aan het ontwerp zijn een opto-coupler en discrete componenten ipv SMD (en natuurlijk op strokensprint opgebouwd).

Goed voor: mijn seindecoders, huisverlichting, neonlampen, een (kamp)vuurtje, ...

De decoder is via MM of DCC aan te sturen ofwel als stand-alone sturing te gebruiken (afhankelijk van de firmware in de controller).  Voeding:  12 tot 16V (zowel AC als DC).




Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 oktober 2013, 21:43:53 pm
Aan dat tempo kan ik wel niet volgen he.  ;)  Ziet er goed uit. Ik heb iemand beloofd hier op het forum om iets gelijkaardig te maken, maar die met decoder in zal wellicht voor versie nr 3536 zijn...  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 18 oktober 2013, 09:18:34 am
Aan dat tempo kan ik wel niet volgen he.  ;) 

Oei ... dan ga ik niets vertellen over de batch van 9 printplaatjes waar ik nu mee bezig ben  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 18 oktober 2013, 14:50:21 pm
Aan dat tempo kan ik wel niet volgen he.  ;)
En ikke zal dan maar zwijgen over m'n DCC naar CAN-bus conversie.  En de CAN-bus to ethernet...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 18 oktober 2013, 21:16:02 pm
Citaat
@Havoc, daar zit toch een verticale scrollbar op?

Neen, meer dan die paar lijnen heb ik niet getypt.

Momenteel heb ik last van een existentieel probleem. Zelf een µC bordje maken of gewoon kopen. Als je meer dan 1 stuk nodig hebt, dan is het prijsverschil geen punt. Maar met zelf maken heb je wat je wil en veel problemen om het werkend te krijgen (software is niet mijn ding), kopen geeft minder voldoening, je moet soms via een omweg werken maar minder kopzorgen omdat de stukken die je koopt wel werken (als het niet werkt is het omdat je de boel verkeerd gebruikt).

Eerlijk gezegd verschiet ik me van de prijs die je steekt in de besturing van een ietwat redelijke baan. Ik zit direct aan een 150 electrische secties en evenveel wissels. Als je daar dan nog een controlepaneel bijdenkt dan zit je heel snel aan honderden IO's. En of je dat zelf maakt of koopt het blijft een serieus budget.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 18 oktober 2013, 21:41:54 pm
Als je meer dan 1 stuk nodig hebt, dan is het prijsverschil geen punt.

Ik vermoed dat je het tegengestelde bedoelt ...

Wat die honderden IO's betreft: klopt. Daar ben ik de laatste tijd volop mee bezig ...  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 oktober 2013, 20:40:24 pm
Mijn eerste ervaringen met SMD ledjes solderen: 3528 (wit) en PLCC6 (RGB) van draadjes voorzien:

(http://www.pctoytoy.be/2013/20131019_1.jpg)

En dit voor mijn led-decoder.  Op de foto enkel de 3528 led's

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 oktober 2013, 23:37:27 pm
#include <htc.h>
// Config: HS ext Xtal- Watchdogtimer disabled - LVP Disabled
__CONFIG(FOSC_HS & WDTE_OFF  & LVP_OFF);
#define _XTAL_FREQ  20000000   
 void main()
   {
      unsigned int positie
      unsigned char richting
     
     

}


Nu nog de timer starten, interrupt genereren, stappen tellen en dan zou de motor moeten draaien...
--> http://forum.modelspoormagazine.be/index.php/topic,14950.1200.html (http://forum.modelspoormagazine.be/index.php/topic,14950.1200.html)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 20 oktober 2013, 11:14:13 am
Als je meer dan 1 stuk nodig hebt, dan is het prijsverschil geen punt.

Ik vermoed dat je het tegengestelde bedoelt ...

Wat die honderden IO's betreft: klopt. Daar ben ik de laatste tijd volop mee bezig ...  ::)

Klopt, moet "als je maar 1 stuk nodig hebt" zijn.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 oktober 2013, 16:05:53 pm
Draadloze terugmelders via de digitale locspanning.

Het zit nog maar in een denk fase, maar volgens mij moet het mogelijk zijn een goedkope terugmelder onder de bedding van Marklin C of M rail te plaatsen (of andere als er maar ruimte onder het spoor is). De terugmelder neemt zijn voeding  af van de digitale locspanning, en melden ook terug via de digitale locspanning.

Het idee komt van het aanmeldprincipe van Mfx loc’s dat ik aan het bestuderen was. Waarom niet tijdens de pauze’s tussen het digitale data verkeer door, de digitale locspanning te gebruiken om een eigen zwak digitaal signaal er op te superponeren.

Dit kan eigenlijk voor elk type digitaal signaal: DCC, Mfx en MM zolang er maar pauzes in voorkomen.
 
De basis bestaat uit een goedkoop PIC µC, een eenvoudige gelijkrichter, stroomdetectie via spanningsval over dioden (zie principe pendelautomaat (http://forum.modelspoormagazine.be/index.php/topic,18599.msg226051.html#msg226051)) en een geschakelde weerstandsbelasting om een digitaal signaal de superponeren op de voeding. Dit kan allemaal in SMD techniek voor 2 à 3€ per terugmelder. Elke PIC µC krijgt een uniek adres, deze die het best overeenkomt met het S88 protocol, bv: terugmelder 2.14 . 

Tussen de centrale en de aansluitingen naar de treinbaan kan je dit gesuperponeerd signaal er eenvoudig uitfilteren. Dit gebeurd ook door een PIC µC. De µC zet de terugmedingen netjes op zijn plaats volgens het S88 protocol. De centrale kan deze µC gewoon uitlezen volgens de standaard S88 bus.

Het voordeel is dat je snel een geautomatiseerde baan kan opbouwen en weer afbreken met maar twee aansluitdraden (als je ook de wissels zo aanstuurt).

Moeilijk kan dit niet zijn, we hoeven immers geen digitaal signaal te analyseren enkel maar kijken of er een pauze is. Terugmelding via superpositie is al meermaals met succes toegepast door andere modelbouwers. En van digitale S88 terugmelders en µC weet ik voldoende.  ;)

Waar ik nog wel een oplossing moet voor vinden is dat de terugmelders allen niet tegelijkertijd iets mogen terugsturen….  :-\


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 23 oktober 2013, 16:11:17 pm
en wat wil je precies (terug)melden, Geert?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 oktober 2013, 16:13:33 pm
Waar de loc ergens passeert  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 oktober 2013, 13:02:48 pm
Waar ik nog wel een oplossing moet voor vinden is dat de terugmelders allen niet tegelijkertijd iets mogen terugsturen….  :-\
Als je nu hetzelfde principe toepast op de communicatie tussen je terugmelders?  Gewoon een signaal superponeren, ipv dat je communicatie in één richting verloopt, zal het nu in 2 richtingen gaan.  Elke terugmelder geeft door aan de volgende dat hij nu mag 'praten' en de laatste geeft dat terug door aan de eerste.

Maar toch een paar opmerkingen:
- ik zou nooit dit soort van communicatie gebruiken op de rijspanning, ik ben er niet helemaal van overtuigd, maar vroeg of laat riskeer je problemen met je booster(s) als die niet goed genoeg isoleert.  Zonder isolatie, zal je als je ooit per ongeluk op hetzelfde ogenblik praat als de booster nagenoeg een kortsluiting bekomen.  Met isolatie zal de booster geen kortsluitingen op de baan meer detecteren.  Da's mijn idee over boosters en klooien met de rijstroom...

- waarom stroomdetectie en geen massadetectie?  Met stroomdetectie ga je nooit een 'verloren' wagonnetje terugvinden.

Mijn modules zijn voorzien van 4 stroomdraden (2x rijstroom en 2x accessory) en 1 UTP communicatie kabel.  Van de UTP ga ik er 3 gebruiken (CAN-H, CAN-L en GND).  De GND is niet echt nodig, maar helpt enorm...  Ik denk er ook nog aan om 3.3V door de UTP sturen om de µC's apart te voeden.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 oktober 2013, 14:40:53 pm
- waarom stroomdetectie en geen massadetectie?  Met stroomdetectie ga je nooit een 'verloren' wagonnetje terugvinden.

Die volg ik niet. massadetectie wordt toegepast bij 3-rail, Stroomdetectie bij 2rail.
 Een verloren wagonnetje wordt dan gedetecteerd met een weerstandje over de wielen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 24 oktober 2013, 15:07:37 pm
ja, dat laatste klopt maar dna moet je al je wagons voorzien van dat weerstandje.
En dat is niet "standaard" zo gemaakt natuurlijk.     Vandaar denk ik de vraag van Patrick.

Bij 3-rail is  massadetektie meest gebruikt omdat het  niet alleen simpel is, maar ook de wagons en lok standaard  "gekoppelde" assen hebben.    Vandaar dat je met bvb Märklin AC wagons op een 2-rail baan niet moet aankomen.   Dat rijdt niet ver .... :-P
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 oktober 2013, 15:50:19 pm
.. en als je tweerail-wielen op een 3R gebruikt, wordt je wagen niet gedetecteerd  :)

Stel dat je wil weten of een bepaalde loc op een bepaalde plaats langs is geweest, zijn er nog andere manieren (barcode, RFID, ...)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 24 oktober 2013, 16:47:52 pm
of met  een magneetje en een  reed contact,  of optisch met een lichtsluis, of met een druksensor onder het spoor,  inderdaad er zijn veel manieren.  De ene al simpeler of duurder dan de andere.

Het klopt als een zwerende vinger, dat een van DC wielen voorziene wagon op een AC baan makkelijk kan "verdwalen"  zonder  opgemerkt te worden door massadetectoren.

Als de wielen op de DC assen maar "enkelzijdig" geïsoleerd zijn, dan kan je het opvangen door de geïsoleerde kant van de as afwisselend te monteren en een simpel gedeeltelijk gestript draadje tussen de 2 assen  te draaien.  dan heb je bvb vooraan de wagon de as verbonden aan het linker wiel (n rechts geisoleerd) en achteraan omgekeerd.   Dus als je dan de 2 asjes  verbindt met een draadje (gewoon losjes 1 of 2 keer rond elke as draaien) , ben je er al , dan heb je ook massa detectie mogelijkheid met DC assen.

hetzelfde principe kan je ook toepassen voor stroomdetectie op DC  2-rail banen, maar dan met een weerstandje van bvb 10K er tussen ipv een draadje.


Als je daarentegen dubbelzijdig geïsoleerde assen hebt (waar beide wielen apart geisoleerd zijn)  dan lukt dat niet.  Dan ben jeaangewezen op bvb weerstandslak of een gesoldeerd SMD weerstandje tussen as en wiel.



SORRY al sik hier open deuren ingetrapt heb of voor de zoveelste keer maar op hetzelfde gehamerd heb... !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 oktober 2013, 21:54:25 pm
Oei precies niet alles gelezen, dacht dat hem om 3-rail ging.  Dan gaat m'n opmerking inderdaad niet op.

Maar voor de DC wielen heb ik wel een trucje (3-rail): gewoon gaatje in de isolatie boren en een messing pinnetje in persen; beetje bijvijlen en een likje verf en je ziet er niks meer van.  Of als je eenvoudig aan vervangwielen kan geraken gewoon een setje AC wielen aanschaffen :P
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 oktober 2013, 14:51:38 pm
Bedankt allen om mee te denken. Het is wel niet de bedoeling om andere manieren van terugmelders op te sommen. Ik wil mij hier beperken tot terugmelders via de digitale voeding voor de locs.

Het is maar een experiment dat eventueel praktisch kan zijn voor op- en afbreekbare banen in C of M rails, zeker als je deze even opbouwt op een keukentafel of iets dergelijks.


Waarom stroomdetectie?

-De detectie die ik gebruik werkt zowel bij stroomdetectie 3rail en 2rail als bij massadetectie 3rail. Het is  gewoon dezelfde schakeling, enkel moet je bij massadetectie er een R van 10k bijvoegen als belasting waar een stroom door loopt.

-Bij massadetectie moet je je C of M rails ergens beschadigen zoals: doorslijpen,  doorknippen of wat dan ook. (alhoewel het bij mij al 30 jaar geleden is dat ik nog een M rail vastgepakt heb…) Bij stroomdetectie via middenrail hoeft dit niet.

-Deze schakeling is ook bedoeld voor onze 2 rail vrienden.


Principe dataoverdracht:

De schakeling zet geen bijkomende spanning op de digitale locvoeding, wat de schakeling wel doet is met een redelijke hoge frequentie een belasting in en uit schakelen waardoor je een rimpel krijgt op het voedingssignaal. Dit zal maar enkel mV zijn, maar door de hoge frequentie redelijk eenvoudig uit de locvoeding te filteren net na de centrale. 


Terugmeldfrequentie:

Het is niet zo dat we op elk moment de toestand van de terugmelder wil weten. Enkel als er een toestandwijziging is, moet deze doorgemeld worden. Dit beperkt al het datatransport op de locvoeding. De S88 bus naar de centrale staat los van dit terugmeldsysteem.


Aantal terugmelders:

Deze wil ik beperken tot 128. Zo kom ik met 1 byte datatransport toe, 7bits bevat nummer terugmelder en 1 bit is toestand terugmelder ( 1 of 0). Foutcorrectie zal waarschijnlijk iets als het MM protocol zijn, 2 keer na elkaar hetzelfde doorsturen? Houd het simpel…


Planning?

We zien wel, eerst nog wat andere projecten verder af werken en is plannen maken voor mijn vaste baan.  Daar moet ergens het volgende brugje op komen:

(http://users.telenet.be/RedDeBist/MBAAN/BRUG.JPG)

Het is nog maar het middelste deel ervan, totaal 3,6meter lang en 0,6m hoog. Dit ligt project al een jaar stil… Zo ziet deze er int echt  (https://www.google.be/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&cad=rja&docid=1Y2iBNmSMcee3M&tbnid=ndZc2bH07FydpM:&ved=0CAUQjRw&url=http%3A%2F%2Fwww.trekearth.com%2Fgallery%2FEurope%2FSwitzerland%2FEast%2FGraubunden%2FLangwies%2Fphoto121831.htm&ei=CWhqUuLXDayT0QXFxYCgBw&bvm=bv.55123115,d.Yms&psig=AFQjCNHfiGDiNVFkXKnz0jnA_M7PSxBj3Q&ust=1382791539848781) uit , en ik dacht dat één van onze moderators deze enkele weken geleden in het echt heeft gezien …


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 25 oktober 2013, 14:57:24 pm
Knappe brug !
3.6 meter totale lengte?  Dat is al langer dan mijn knutselkamer   8) 8)
Je bouwt blijkbaar een kanjer van een baan !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 oktober 2013, 14:59:00 pm
Knappe brug !
3.6 meter totale lengte?  Dat is al langer dan mijn knutselkamer   8) 8)
Je bouwt blijkbaar een kanjer van een baan !

Tja, als je ooit eens langskomt zul je merken dat ik een ruimte heb van 11,5m op 9m  :o

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: adrievans op 25 oktober 2013, 16:36:41 pm
Knappe brug !
3.6 meter totale lengte?  Dat is al langer dan mijn knutselkamer   8) 8)
Je bouwt blijkbaar een kanjer van een baan !

Tja, als je ooit eens langskomt zul je merken dat ik een ruimte heb van 11,5m op 9m  :o

Geert

Slik,dat is mijn twee woonlagen bij elkaar opgeteld  :P
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 25 oktober 2013, 16:46:12 pm
dat is inderdaad heel ruim, ja..... 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 25 oktober 2013, 16:55:29 pm
Onvoorstelbare luxe !
Maar je loopt natuurlijk het gevaar té groots te starten, zodanig dat je het nooit afgewerkt krijgt ...
Dat risico is bij mij een heel stuk kleiner  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 oktober 2013, 17:04:44 pm
Onvoorstelbare luxe !
Maar je loopt natuurlijk het gevaar té groots te starten, zodanig dat je het nooit afgewerkt krijgt ...
Dat risico is bij mij een heel stuk kleiner  ;)

Ik weet het veel luxe. Maar hou deze ruimte is vorstvrij en redelijk droog (vochtgehalte). Maar ook stofvrij! Ik denk er zelfs over na deze ruimte de halveren...

Ik heb ook wat gelogen over deze ruimte, er staat ook een trap in die 2vierkante meter eraf neemt...


Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 25 oktober 2013, 17:18:17 pm
zoals ons vadere altijd zei (en hij kon het weten...) :   

"Zoon, ge kunt in 't leven niet alles hebben....  een dikke vrouw en veel plaats in uw beddeke !!"

Soms moet je keuzes maken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 28 oktober 2013, 20:08:19 pm
Effe een LCD'ke met touchscreen besteld.
http://www.aliexpress.com/item/Freeshipping-2-8-TFT-SPI-LCD-module-Touch-screen-with-PCB-board-SD-card-driver-for/820314575.html (http://www.aliexpress.com/item/Freeshipping-2-8-TFT-SPI-LCD-module-Touch-screen-with-PCB-board-SD-card-driver-for/820314575.html)
Gaat dienen om de CAN-bus controller te debuggen en op te volgen.  Wordt via SPI op de microcontroller aangesloten.  Elke CAN-bus controller in m'n ontwerp wordt uitgerust met 8 seriële devices waarvan er één specialeke: het LCD-scherm met touchscreen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 28 oktober 2013, 21:28:44 pm
Klinkt leuk, Patrick. Ik ben benieuwd wat je er visueel en bedien-technisch mee gaat uitspoken  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 28 oktober 2013, 21:42:32 pm
Alles gaat over CAN-bus gaan op m'n baan.  Binnenkort ga ik ook de interne CAN-bus van de Marklin CSII hacken en mergen/samenvoegen met mijn CAN-bus.  2 mogelijkheden hiervoor: via de CSII ethernet verbinding, of ding opengooien en intern de CAN-bus afpitsen.
Elke moduleplaat van m'n baan krijgt één CAN-controller en die kan op zijn beurt 8 tot 16 seriële sub-controllers aan (wissel sturingen via servo, accessory decoders, bezetmelders, ...).  Eén van de seriële sub-controllers zal dat LCD'tje worden dat ik op elke van de CAN-nodes kan inpluggen wanneer nodig.
Er worden ook 2 speciale CAN-node/controllers voorzien: een CAN-to-ethernet voor de PC sturing en één CAN-to-S88 (terugmelders).  Bedoeling is dat elk van de nodes self-learning is en kan achterhalen welke sub-controllers er precies aanhangen.  't Leuke is dat het bijlange niet zo moeilijk is en dat de microcontrollers waarvan ik er nu heel wat ga nodig hebben ook bijna niets kosten.

Ik ga volgend jaar ook bouwen en ga zelf m'n domotica in mekaar steken (en ja, ook via CAN-bus) en dan komt dat LCD wel meer dan eens van pas.  Nu eerst eentje aangeschaft om te testen.  Ik ga eerst proberen om dat ding volledig serieel aan te sturen over de SPI van de µC, maar ik vrees een beetje voor de snelheid.  Ik heb al uitgerekend dat ik om alle pixels aan te spreken ong. 1.2 seconde ga nodig hebben.  Desnoods schakel ik over naar 8 of 16 bit parallelle interface met een extra microcontroller; dat LCD'tje heeft 't gelukkig allemaal...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 29 oktober 2013, 20:35:18 pm
SPI daar kan je nochtans heel wat doorpompen. Op een project dat ding ooit aan 100MHz laten draaien, dan wel enkel over een 30-tal cm over de pcb. CAN is 1 Mbps of zoiets en dan moet je nog opletten op de round-trip (als ik me goed herinner van een project met rolbruggen).

Na een hele hoop nadenken en theoretiseren ga ik toch voor en zelfgebrouwen oplossing. In november een processorkaartje in elkaar flansen en eens leren code schrijven.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 29 oktober 2013, 21:20:25 pm
SPI is inderdaad een zeer snel protocol en de snelheid kan je heel hoog opdrijven.  Maar... inderdaad roundtrip (of reflectie) komt roet in het eten gooien (en zowel bij CAN als bij SPI).  De brute regel bij transimissielijnen is dat de golflengte mag nooit hoger zijn dan 10x de lengte van je kabel.  Dus om jouw geval aan te halen: 100Mhz geeft een golflengte van 3 meter (snelheid van het licht / frequentie), dus max. lengte van je kabel 30cm.  Om deze reflecties te vermijden moet je transmissie kabel steeds voldoen aan bovenstaande formule.  Protocols die werken met error correctie kunnen de snelheid opdrijven, omdat kleine foutjes weggefilterd kunnen worden door deze correctie.  Daar ligt het grote verschil tussen SPI en CAN.

Dus om alles op te lossen met SPI gaan we iets te kort door de bocht vrees ik; dit protocol is duidelijk voorzien op communicatie tussen microcontrollers of seriële devices binnen hetzelfde apparaat of op zeer korte afstand.  Stel dat we de frequentie laten zaken tot 10Mhz, komen we op 3 meter; en bij 1 Mhz zitten we op 30 meter.  Bovendien heb je 4 draden (zelfs best 5, CLK, MISO, MOSI, !CS en GND) nodig.  Je kan wel een soort van daisy chain ontwikkelen om zo de lengte op te drijven: elke node heeft 2 SPI transmitters/receivers.  Maar dit genereert gigantisch veel overhead op elke node (alle traffiek passeert over alle nodes en moet verwerkt en terug doorgestuurd worden).

CAN-bus heeft meer voordelen: bij versie 2.0B haal je 1MHz over 40 meter met 2 draden (versie CAN-FD zelfs 8MHz).   De afstand van de CAN-node tot de transmissiekabel mag echter nooit meer dan 30cm bedragen.  De transmissie over CAN is veel minder gevoelig voor storingen omdat je signaal steeds in tegenfase zit.  Bovendien is de bekabeling een simpele twisted pair.  Het is bovendien een industriële standaard (zit in de meeste recente autos) en je kan er heel wat hardware/software voor vinden.  Het verschil met CAN en SPI is dat CAN niet zomaar een serieel protocol is, maar het bevat ook elementen voor timing en fysieke beperkingen.  Dit is voor mij genoeg om voor CAN te kiezen over langere afstanden (>1m) en SPI over korte afstanden (ong. 10 à 20 cm).  Hetgeen ik wil bekomen staat hier al wat beschreven: http://forum.modelspoormagazine.be/index.php/topic,17335.msg230179.html#msg230179 (http://forum.modelspoormagazine.be/index.php/topic,17335.msg230179.html#msg230179)

Eender welk protocol je ook kiest, je zal zowiezo redelijk zuinig moeten omspringen met de data die je ermee verstuurt.  Al deze data moet immers genoeg tijd hebben om serieel over de lijn gejaagd te worden.

Post maar wat gegevens van wat je exact wil doen, het interesseert me ten zeerste...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 29 oktober 2013, 21:50:29 pm
Citaat
De brute regel bij transimissielijnen is dat de golflengte mag nooit hoger zijn dan 10x de lengte van je kabel.  Dus om jouw geval aan te halen: 100Mhz geeft een golflengte van 3 meter (snelheid van het licht / frequentie), dus max. lengte van je kabel 30cm.  Om deze reflecties te vermijden moet je transmissie kabel steeds voldoen aan bovenstaande formule.  Protocols die werken met error correctie kunnen de snelheid opdrijven, omdat kleine foutjes weggefilterd kunnen worden door deze correctie.  Daar ligt het grote verschil tussen SPI en CAN.

Euh...denk dat je 2 dingen door elkaar haalt. Eenmaal een kabel/pcb-trace langer is dan 1/10 de golflengte is het een transmissielijn. Korter dan 1/10 golflengte is het een stub. Maar reflecties heb je enkel als de impedantie niet aangepast is. Je kan prima 100MHz door een kabel van tientallen meters sturen zonder reflecties als je impedantie van zender en ontvanger aan de impedantie van de kabel aangepast zijn. Ethernet stuurt 125 MHz over 100m kabel zonder enig probleem. Als je parallel gaat werken bij hogere snelheden komen er nog looptijden bij om de boel moeilijker te maken.

SPI is enkel een "protocol", het beschrijft geen fysische interface. Dus SPI over een RS-485 elektrische interface is prima en haalt zonder problemen grote afstanden met behoorlijke debieten. RS-485 gaat tot 35Mbps tot 10m dus dat is ruim voldoende voor de gemiddelde treinbaan denk ik. Enig probleem is dat ik meer dan de standaard 32 tranceivers op de bus wil en de 1/8 load 3V3 tranceivers zijn niet zo snel.

Ik ga ook geen SPI gebruiken om de klok niet te hoeven mee te sturen. Dat is een probleem van SPI, je hebt die klok nodig. Op een pcb waar je in ttl kan blijven is dat geen ramp, dat is een track meer. Maar als je tussen pcb's wil gaan moet je iets robuster gebruiken. En dan is die klok er teveel aan. Direct dubbel zoveel tranceivers en ook 2 draden meer, 2 pinnen in de connector extra.

Opzet is redelijk eenvoudig:
- pc draait stuurprogramma, hangt een usb interface bordje aan (DiMax Sub20)
- gebruik het 9-bit serieel protocol en zet om naar RS-485 voor transport. Alles in 1/8 load voor max 256 elementen op de bus. Snelheidsbeperking is de processor/pc interface.
- enkele extra lijnen voor de borden te resetten, te weten of ze allemaal klaar staan, irq etc.
- seriële bus vertrekt aan de pc interface, gaat alle borden af, laatste bord sluit de lus af.
- processorbord op basis van de Atmel ATxmega128A1U
- processorbord plugt in een interfacebord dat de IO doet. Zeker een versie is pwm. Misschien ook een servo bord. Geen idee of ik enkel in, uit of gemengd IO ga doen.
- 5 seriële bussen: schaduwstation, baan, bedieningsbord, accesoires, spare. Mogelijk gaan de accesoires in de rest op en komt er een apart bedieningsbord voor schaduwstation en baan.

Gaat niet volgend jaar klaar zijn denk ik... Ook nog de onderbouw beginnen, die 3.5" live steam afmaken, de tekeningen voor de 5" beginnen en die spoor 1 die hier al zeker 5 jaar op het forum rondwaart verder afwerken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 29 oktober 2013, 23:52:12 pm
Inderdaad was effe met 2 dingen tegelijk bezig en niet goed opgelet (ben m'n bibliotheken naar KiCad aan 't omzetten)...  Je hebt gelijk >1/10 golflengte = transmissie.  Ook de impedantie was ik effe vergeten te vermelden, bij de CAN bus is dat ook zo (120 ohm aan beide zijden voor de langere lijn, korte hoeft niks).

Maar ik gebruik SPI wel tussen m'n PCBs, maar op korte afstand (max 20cm), en dat gaat perfect.  Gewoon een stukje CAT5 kabel op een 6pin header (GND, VDD, MISO, MOSI, SCK en !CS).  Momenteel draait die bij mij op 20MHz.  GND en VDD geef ik ook mee omdat ik m'n microcontrollers apart voed, de regulator staat op de CAN-node en kan gerust de 8-16 slave controllers aan.  Op elke slave controller zit er een aparte regulator (los van de µC) voor de 'periferie'.

Aan RS-485 heb ik ook een tijdje gedacht, maar laten varen wegens teveel werk.  CAN is trager, maar geeft meer ondersteuning: protocol, bibliotheken, hardware ed...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 30 oktober 2013, 22:24:08 pm
Citaat
CAN is trager, maar geeft meer ondersteuning: protocol, bibliotheken, hardware ed...

Goed punt dat je daar aanhaalt. Vermijden om het wiel nog eens uit te vinden is belangrijk.

Mijn keuze voor 9-bit serieel over RS-485 is gekomen om een en ander te vermijden:
- asynchroon serieel maakt dat een klok niet nodig is
- RS-485 geeft lange verbindingen zonder veel problemen
- 9-bit omdat zowel de pc-interface dit ondersteunt als de controller. De controller heeft bovendien hardware ondersteuning voor de adresherkenning.

Nadeel is dat de snelheid beperkt wordt tot 2 Mbps. Maar langs de andere kant is DCC en S88 veel trager. Dus kan ik best wat inefficientie in mijn code verdragen.

Mijn bedoeling is om de RS-485 via de "bus" te voeden. De controller krijgt zijn eigen voeding. Maar als die voeding er niet is krijgt de pc geen "ready" signaal dus weet die dat er iets mis is (en ik dus ook). Alles gaat op 12V draaien denk ik. Voor Z is dat direct als rijstroom bruikbaar en met een SMPS is het geen probleem om daar 3.3V van te maken. Dat beperkt de stroom wat en met een PC voeding mag dat ook geen probleem zijn, die leveren gemakkelijk enkele Ampères voor weinig geld.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 31 oktober 2013, 22:03:03 pm
Je voornaamste keuzes die je gemaakt hebt, komen in CAN ook voor dus op dat vlak zijn de violen gelijkgestemd (enkel de 9-bit is niet van toepassing bij CAN).

Ik denk dat we uiteindelijk wel hetzelfde gaan bekomen, enkel met een ander protocol.  Je gaat wel meer werk hebben met die RS-485, maar je bent nergens aan gebonden, je doet wat je wil en dat kan ook een groot voordeel zijn.  Met CAN moet je de specs volgen, anders is het geen CAN meer en verlies je meteen alle voordelen ervan.  Een beetje give and take denk ik.

Ben ondertussen de specs van CAN-FD aan 't uitpluizen, deze werkt met variabele bitrates: 'nego' & 'ack' nog steeds aan max. 1MBit, maar data transfer onbeperkt (fysische beperking).  Maar ik heb al nagegeken dat je met 1Mbit CAN al meer dan genoeg hebt voor een modelbaan (zelfs met de CAN overhead). Dus jouw 2Mbit zal zeker ook lukken, want jouw protocol zal zelfs nog minder overhead hebben vermoed ik.  We moeten gewoon slim omspringen met de beschikbare ruimte; bv. de bezetmelders dienen enkel toestandswijzigingen door te geven in normaal bedrijf, vele efficiënter dan altijd alles door te sturen.

En wat noem je ineffiëntie?  De overhead voor bv. de CRC ;D.  Maar je hebt gelijk de bestaande protocollen van de modelbaan zijn zo traag, dat we heel wat ruimte hebben....
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 oktober 2013, 23:05:00 pm
...Maar je hebt gelijk de bestaande protocollen van de modelbaan zijn zo traag, dat we heel wat ruimte hebben....

Juist daarom vraag ik mij af waarom jullie zelf een protocol willen uitvinden?  Wat is er mis met een bestaand?  Weliswaar niet zo snel (16.6 kb) maar algemeen en eenvoudig in gebruik: Loconet!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 31 oktober 2013, 23:51:40 pm
CAN bus is sneller en beter dan Loconet.  Deze bus wordt intern in de Marklin CSII gebruikt (heb er een ganse handleiding van), door Zimo en waarschijnlijk nog anderen.
En waarom -al was het maar voor de sport- geen eigen protocol ontwikkelen als je daar de tijd voor hebt.  Wie weet kom je wel met een vernieuwend idee...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 01 november 2013, 12:35:19 pm
Citaat
Je voornaamste keuzes die je gemaakt hebt, komen in CAN ook voor dus op dat vlak zijn de violen gelijkgestemd (enkel de 9-bit is niet van toepassing bij CAN).

Ik denk dat we uiteindelijk wel hetzelfde gaan bekomen, enkel met een ander protocol.  Je gaat wel meer werk hebben met die RS-485, maar je bent nergens aan gebonden, je doet wat je wil en dat kan ook een groot voordeel zijn.

9-bit gebruik ik enkel omdat het reeds in zowel pc-interface als controller voorzien is. En het laat de controller toe om de uart de adressering te laten uitpluizen zonder dat de processor iets moet doen. De RS-485 is enkel gebruikt om de ttl seriële bus zonder problemen over de hele baan te krijgen. Dat is niet meer werk dan een tranceiver op de pc zetten. Vergeleken met software is dat voor mij het minste van alle problemen.

Citaat
Juist daarom vraag ik mij af waarom jullie zelf een protocol willen uitvinden?  Wat is er mis met een bestaand?  Weliswaar niet zo snel (16.6 kb) maar algemeen en eenvoudig in gebruik: Loconet!

Ik kan je enkel gelijk geven, zelf een protocol moeten uitvinden is niet echt efficient. Maar meestal is er wel een goede reden (of dat denkt diegene die dat doet toch :D )Voor loconet is het probleem dat het geen open standaard is en dat je dus eigenlijk geen officiële spec hebt die je kan gebruiken. Uit Wikipedia:

Citaat
Het LocoNet-systeem is ontwikkeld door Digitrax met als basis de Amerikaanse telefoonkabels. Het is echter geen open systeem en fabrikanten die LocoNet op hun apparatuur gebruiken zijn hiervoor een vergoeding verschuldigd aan Digitrax.

Dat maakt het al niet zo aantrekkelijk.

DCC is wel gemakkelijk te vinden (downloaden bij NMRA) maar wat me daar tegensteekt is dat het een-richting is. Als je 2 totaal verschillende bussen hebt (DCC en S-88) voor 1 ding te doen dan is me dat een behoorlijk nadeel.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 01 december 2013, 17:12:24 pm
Daar mijn bestaand PIC ontwikkelingsbordje al geruime tijd niet meer voldeed aan mijn behoeften, ben ik met een nieuw ontwerp begonnen.  Allemaal kleine modules die aan alkaar worden gekoppeld.  Een bordje voor de controller (met kristal, enkele leds en een USB aansluiting), een LCD module (met mogelijkheid om de backlight permanent aan of PWM gestuurd te schakelen) en een Loconet interface zijn reeds klaar.
Volgende modules zijn een MM/DCC interface, een voeding(!), een led bord en een bordje met drukschakelaartjes.
We kunnen opnieuw experimenteren!

(http://www.pctoytoy.be/2013/20131201_1.jpg)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 december 2013, 20:17:29 pm
Peter,

jij weet ook wel hoe je een mens jaloers kunt maken zeg  ;).

Ik ben zelf ook volle bak bezig om mijn µC pendelautomaat verder af te werken.  Maar ik heb tegenslag met mijn programmeer apparaat. Deze werkt enkel op een PC met een com poort. En de enige PC in huis met zulke com poort heeft het begeven. Nu sta ik voor de keuze een PICKIT 2 of 3 aan te schaffen of een USb naar een COM poort.

we zien wel.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 01 december 2013, 20:53:26 pm
...jij weet ook wel hoe je een mens jaloers kunt maken zeg  ;)...

En vooral met die mooie degelijke groene schroefconnectors ;) ;) ;)

...ik heb tegenslag met mijn programmeer apparaat. Deze werkt enkel op een PC met een com poort. En de enige PC in huis met zulke com poort heeft het begeven. Nu sta ik voor de keuze een PICKIT 2 of 3 aan te schaffen of een USb naar een COM poort.

Geert, mijn beurt om je een plezier te doen: ik heb nog een USB-RS232 convertor op overschot.  Stuur mij je adres via mail en je mag deze week de postbode verwachten!

Niet alle programmers werken met dergelijke omzetter; je zal eens moeten proberen!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: ToThePoint op 02 december 2013, 08:02:47 am
Heb zelf ooit ook overgeschakeld naar een PICKIT 2 en heb nog geen moment spijt van die aanschaf.
Heb die wel rechtstreeks bij de fabrikant zelf besteld.
De programmer is in een knip klaar en kan vele µC aan.

Maar als u een ESU lokprogrammer hebt, daar zit een usb naar rs232 kabel op.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 04 december 2013, 10:42:00 am
Ik gebruik ook al een tijdje een USB-programmer (voor AVR dan)
Véél sneller dan mijn vorige. Het maakt het programmeren en testen een stuk minder saai.

Waar ik nu mee bezig ben? I2C-communicatie (1 master en verschillende slaves)
De gebruikte microcontrollers zijn van het type AtMega1284P
Het gaat om relatief grote datapakketten (128 bytes typisch) en dan is wat meer snelheid wel interessant.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 04 december 2013, 22:11:00 pm
Een echte USB programmer zal ik ook ooit is moeten aanschaffen. Ik moet meegaan met de tijd hé. Vandaag een pakketje ontvangen van Peter (PeterC) zodat ik toch wat verder kan met mijn vertrouwde RS232 programmer. Waarbij deze, veel dank aan Peter, om mij zo snel uit de nood te helpen.

Wat staat er nu op mijn programma: een pendelautomaat voor één DCC lok (met al zijn digitale functies) die ik heen en weer kan laten rijden.

Op de simulator werkte het al, nu in praktijk testen met mijn vertrouwde programmer.

Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 07 december 2013, 14:35:36 pm
Een USB programmer met ICSP breakout.  Bijna al m'n printjes hebben een ICSP connector, zodat ik de software steeds kan aanpassen zonder de chip eruit te moeten halen.

Waar ben ik mee bezig?  Vorige week de TFT LCD driver en de touch panel driver voor een 2.8" scherm afgewerkt (ansi C).  Nu bezig aan SD Card met een SPI, om raw data van SD of MMC kaarten te kunnen lezen/schrijven.

Het LCD paneeltje verstookt heel veel ROM geheugen voor de images en fonts.  En dat is nu net iets waar een microcontroller er niet teveel van op overschot heeft.  Het LCD paneel heeft ook een ingebouwde SD card reader en nu ben ik daarmee aan 't spelen.  Aparte SD card readers kosten amper 1€ en 2Gb kaartjes 3€, je hebt dus meteen een overschot aan extra ROM geheugen.  Momenteel lees/schrijf ik gewoon raw data (pakweg sectors van 512 bytes in één keer).  Aan 5 Mbit gaat dat al behoorlijk snel, uiteindelijk ga ik er proberen 10 Mbit uit te halen (veel sneller zullen die goedkope SD'tjes niet halen, maar da's ook voor niks nodig).
Op termijn ga ik de raw data laten voor wat het is en overschakelen naar FAT16, zodat de kaartjes door de PC geschreven kunnen worden met gewone bestanden.  In het raw formaat moet ik via een PIC micrcontroller de kaartjes eerst opvullen met de data die ik wens; een andere mogelijk is via een raw editor op de PC.  Nadeel van raw is dat ik zelf moet zien dat ik m'n data op het kaartje terugvind.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 december 2013, 00:18:57 am
Patrick, ik ken heel wat van µC en data storage , en zo voort. Maar jou kennis van deze zaken is zelfs voor mij ‘boven mijn petje’.  Maar ik ben blij dat je me blijft prikkelen, om ook verder te gaan in deze materie.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 08 december 2013, 14:18:22 pm
Patrick, ik ken heel wat van µC en data storage , en zo voort. Maar jou kennis van deze zaken is zelfs voor mij ‘boven mijn petje’.  Maar ik ben blij dat je me blijft prikkelen, om ook verder te gaan in deze materie.
Is nochtans helemaal niet moeilijk.  Allemaal standaard principes, de SD card (eigenlijk MMC) kan je serieel perfect uitlezen of schrijven en die koppel je dus gewoon op de SPI van je µC.  Dan is het gewoon een kwestie van de datasheets van de SD card te raadplegen en je hebt alles wat je nodig hebt.  En een logic snifferke in combinatie met een analoge scoop helpt natuurlijk ook.
In m'n eerste job deed ik niks anders dan met microcontrollers 'spelen', nu ontwikkel ik alleen nog software (web applicaties); maar de feeling met de µC ben ik nooit verloren.

Heb net een test gedaan met een PIC18 en de SPI clock op 10MHz, werkt perfect op een goedkoop Chinees SD kaartje van 2Gb.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 08 december 2013, 14:31:43 pm
Was er wel vergeten bij te zeggen dat je zulke dingen beter in C schrijft.  Assembler kan ook, maar 't zou ellendig veel werk zijn; C is hiervoor beter (of een andere hogere generatie programmeertaal).
Maar ik moet er wel eerlijkheidshalve bij zeggen dat de gratis PIC (Microchip) compilers niet echt je dat zijn.  Microchip 'foefelt' met de gegeneerde assembler code om zo hun betalende pro versie te promoten.  Voor delay loops in C kan dat wel dodelijk zijn, Microchip last her en der random NOP instructies in.  En dan zeggen ze dat de pro versie effeciënter is, yeah right, kassa kassa...
Ik heb nu een paar testen gedaan met de volledig gratis small devices c compiler (sdcc), en dat lijkt prima te werken.  De code is zeer efficiënt, ik zou 'm zelf niet beter kunnen scrijven in assembler.  't Is wel effe prutsen met de toochain in de IDE...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 december 2013, 21:26:05 pm
Ik wist wel al dat de betaalde versie van Microchip compilers meer efficiëntere codes produceerde. Maar dat er een strategie achter zal wist ik niet. (eigenlijk kon ik de link niet direct leggen) Maar vermits ik in assembler programmeer, heb ik er geen last van.  ;)

Toch bedankt voor de info.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 december 2013, 21:40:32 pm
Mijn stapje verder:

(http://www.meb.gerolf.be/sturing/bm/auto/I2Csignaal.jpg)

I2C/TWI-communicatie voor elkaar gekregen  8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 08 december 2013, 21:48:23 pm
Mooi grafiekjes. Dacht eerst dat het over het MM protocol ging. (de bovenste) Ziet er goed uit, wel wat meer info ?  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 december 2013, 21:59:06 pm
Meer info? Mij goed  :)
't Is een screenshot van mijn USB-scoop. Het gaat om een (herhaalde) verzending van 128 bytes als test.
Bovenaan is de datalijn, onderaan de clock. TWI en I2C zijn tweedraads seriële bussen, hier gaat de clock aan 100 KHz
9 clockpulsen per byte, de laatste puls dient telkens voor handshaking (acknowledge)

In het midden zie je een pauze tussen de twee verzendingen. Rechts daarvan komt eerst een adres-byte (adres 4) en daarna 128 databytes.
Die bytes heb ik bij wijze van test hun rangnummer als inhoud gegeven (dus byte 1 bevat 1, byte 2 bevat 2, ...)
Links zie je het einde van de reeks: byte 123 tot 128, en daarna een not-acknowledge (want einde verzending).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 29 december 2013, 10:29:44 am
Met microcontrollers wordt alles simpel, zeggen ze  ::)  ;D

(http://www.meb.gerolf.be/sturing/bm/auto/testsnelheid.jpg)

Proefopstelling voor mijn PWM-snelheid-regeling (en de communicatie met die regeling)
In totaal 8 schakelingen die met elkaar samenwerken - nog wel wat te debuggen  :-[
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 29 december 2013, 10:55:27 am
Gerolf! Wil je als-je-blieft als de sodemieter onmiddellijk gaan opruimen!  ;D

Maar ik ben heel benieuwd naar wat je de laatste maanden in elkaar het geprutst met je nieuw besturingssysteem.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 29 december 2013, 11:08:28 am
Ik weet het Michiel ... en ik had nochtans plaats gemaakt om deze proefopstelling op een werkblad te zetten  :-[  :-[  :-[

De "meet" is stilaan in zicht voor het besturingssysteem.
Als die snelheidsregelaars werken (en dat is nu nog niet) is dat een belangrijke horde  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 29 december 2013, 11:10:57 am
Gerolf, bedankt voor deze 'prachtige' foto.  Ik druk die groot af voor als ik weer eens gezaag krijg over mijn slordige bureau  :) :) :)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 29 december 2013, 11:16:10 am
Zelfde reactie !
Ik dacht mijn eigen werkblad te zien, maar dan met andere rommel  ;D ;D ;D
Dus geen complexen :  dergelijk werkblad is een fact-of-life  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Koen op 29 december 2013, 11:39:04 am
Ik heb een werkblad vna 2m50 lang maar met dezelfde hoeveelheid aan rommel  ;D  ;D  ;D.
Gelukkig is dit in mijn garage en niet in huis want anders zou mijn echtgenote er niet met kunnen lachen.

Mvg
Koen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 29 december 2013, 12:41:01 pm
Dus geen complexen :  dergelijk werkblad is een fact-of-life  ;D

...Maar in mijn living mag ik dat helaas niet  ;D ;D ;D

Terug on topic:

Gerolf, ik zie DSO 2090.  Die lijkt me vrij betaalbaar.  Wat zijn jou ervaringen ermee?


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 29 december 2013, 21:37:21 pm
Gerolf, ik zie DSO 2090.  Die lijkt me vrij betaalbaar.  Wat zijn jou ervaringen ermee?
Heel content van dat ding, en inderdaad niet overdreven duur  :)
Handige userinterface, voldoende gevoelig voor onze toepassingen,
 en waarschijnlijk nog een hoop mogelijkheden die ik (nog) niet gebruikt heb
kort samengevat: nog geen nadelen ondervonden  8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 29 december 2013, 23:54:37 pm
Hihi, ik lijk net m'n eigen bureau te herkennen!  Ziet er bij mij net zo uit:
(http://i1236.photobucket.com/albums/ff460/Sattrickske/ModelRailroad/EOS5DMarkIII-101-1984_zpsda0898f0.jpg)

En voor de curieuze neuzen, dat LCD'tje is deel van m'n domotica projectje:
(http://i1236.photobucket.com/albums/ff460/Sattrickske/ModelRailroad/EOS5DMarkIII-101-1985_zps75e293f9.jpg)
Het is maar een mackup voor het grootste deel, maar sommige onderdelen zoals de sliders beginnen mooi te werken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 30 december 2013, 09:22:38 am
Jongens jongens, wat hebben jullie allemaal nette werkbladen :-) :-)
Ik heb telkens 2 weken tijd om er een zooitje van te maken en dan passeert de orkaan genaamd "poetsvrouw" en het buro is weer  opgeruimd.
Nu ja, wat heet opgeruimd : ze pakt alles bij elkaar en gooit het in een doos of ergens aan de kant op een hoopje.  En dan is het zoeken !!!

Kennen jullie dat gevoel van  "orde in de chaos" ?  Dat je in die ogenschijnlijke "nest" van onderdelen, wirwar van draden en stapels "brol", toch direkt vinden wat je zoekt, en als het dan opgeruimd is dan ben je ineen vanalles kwijt of vind je het pas na 30 minuten zoeken !
(LEUK DISPLAY, Patrick ! )
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 07 januari 2014, 17:40:44 pm

Niets gaat boven een degelijk gedrukt boek toch? Ik heb een besteld, hopelijk z'n geld waard!http://www.elektor.nl/products/books/microcontrollers/pic-microcontrollers-nl.92178.lynkx (http://www.elektor.nl/products/books/microcontrollers/pic-microcontrollers-nl.92178.lynkx)


Het is wel niet in C, waarvan ik al een heel klein beetje ken, maar toch, ik hoop dat het mij zal vooruithelpen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 januari 2014, 22:18:31 pm
Rian, mooie aanwinst.  8)  :P

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 07 januari 2014, 23:12:58 pm
Ik hoop het toch, ik heb op internet een paar sneak previews gevonden... I²C, rs 232, ADC uitlezen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 08 januari 2014, 08:02:15 am
Rian, goed boek!  Ik heb daaruit ook de JAL mosterd gehaald.
Bert Van Dam legt op een eenvoudige manier heel complexe zaken uit.  Hij is ook actief op het Jallib forum (https://groups.google.com/forum/#!forum/jallib) dus voor verdere vragen kan je daar terecht (Engelstalig forum).

Wel opletten: Bert gebruikt zijn eigen bibliotheken (te downloaden via de link in het boek) en zijn  niet altijd 100% compatibel met de Jallib bibliotheken.

De twee andere boeken heb ik ook en mag je gerust lenen.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 27 januari 2014, 17:53:18 pm
Eindelijk is het boek dan toch toegekomen en direct afgehaald in de boekhandel! Ik dacht dat ze de drukpersen nog moesten instellen...
blink_a_led in JAL ondertussen al gelukt  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 27 januari 2014, 19:08:30 pm
...blink_a_led in JAL ondertussen al gelukt  :D

En nu 'Hello world'  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 27 januari 2014, 19:20:11 pm
Inderdaad :D  Wat ik wel vreemd vind is dat het niet lukt in flowcode, daar heb ik toch al dit mee gedaan, en nu is de lcd op dezelfde manier aangesloten als op zo'n module:


(http://www.treinbaanrian.be/images/eindwerk/lcd.jpg)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 27 januari 2014, 21:09:30 pm
Afgelopen week mijn eerste schreden gezet in het microcontroller tijdperk :D
Met de Arduino uno eerst knipperlicht gemaakt.
Dan SOS, dan fade led.......Nu verkeerslicht met voetgangers licht. Deze sketches gevonden op internet.
Wil proberen dat laatste een interruptie knop aan toe te voegen: voetganger wil oversteken....
Nu me nog verdiepen in de C taal :-\ :o
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 februari 2014, 20:27:11 pm
Vorige week had Rian niet veel overredingskracht nodig om mij van de voordelen van ICSP te overtuigen (ICSP = In-Circuit Serial Programming).

Tot nu toe verliep het programmeren van een controller als volgt: spanning van de schakeling afzetten - controller uit de schakeling halen - controller in de ZIF socket van de programmer - programma in de controller flashen - controller uit de programmer - controller terug in zijn voet in de schakeling - spanning terug aan en testen.  Heel tijdrovend!

ICSP: de schakeling met 5 draadjes met de programmer verbinden.  Voedingsspanning van de schakeling blijft aan en programmeren gebeurt in een fractie van de tijd die mijn (oude) DIL programmer nodig had.

Tijdswinst per project: enorm.

Rian bedankt voor je ICSP demo/tip!

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 15 februari 2014, 21:07:32 pm
JIj ook graag gedaan ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 16 februari 2014, 00:22:07 am
Al iets ingewikkelder:
http://www.sweeting.org/mark/blog/2011/11/27/arduino-74hc595-shift-register-and-a-7-segment-led-display

Het werkt 8), is me ook gelukt het multiplexen te vertragen zodat je kan zien wat er gebeurd 8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 17 februari 2014, 11:13:37 am
Voor een controller project (beveiliging van de transformatoren - lezen van de geleverde/opgenomen stroom) had ik noodzaak aan een seriëel protocol om de nodige parameters in de controller in te stellen en data uit die controller op de PC te lezen.  Dat protocol moest eenvoudig zijn zodat ik in testfase met een simpel terminalprogramma met de controller kan communiceren.  Het protocol met wel in staat zijn om in een latere fase met een Win programma te communiceren om continu de meetwaarden op het scherm te tonen.

Alhoewel het om een reeds verouderd protocol gaat, heb ik toch mijn oog laten vallen op NMEA-0183 (http://en.wikipedia.org/wiki/NMEA_0183) omdat het zo eenvoudig en leesbaar is.

Misschien ook een eenvoudige oplossing voor de andere forumleden die seriëel communiceren met hun controllers?

[Edit] Nu alleen nog een interpreter in elkaar flansen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 februari 2014, 12:43:42 pm
Waarom zou je de aparte segmenten van je display apart aansturen?
Citaat


Al iets ingewikkelder:
http://www.sweeting.org/mark/blog/2011/11/27/arduino-74hc595-shift-register-and-a-7-segment-led-display (http://www.sweeting.org/mark/blog/2011/11/27/arduino-74hc595-shift-register-and-a-7-segment-led-display)

Het werkt , is me ook gelukt het multiplexen te vertragen zodat je kan zien wat er gebeurd
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 17 februari 2014, 13:56:55 pm
Waarom zou je de aparte segmenten van je display apart aansturen?
Citaat


Dat is te lezen in de 3e alinea van het artikel. Stroom begrenzing  ;)
Als er steeds een segment zichtbaar is, kom je op 10 mA. Als ze allemaal tegelijk branden dus 70 mA. Als je ze om beurten een 8 laat maken, blijft het bij 10 mA. Je kunt dan ook volstaan met slechts 1 serieweerstand, in dit geval opgenomen tussen +V en CA.
Voor 1 display win je daar niet zoveel mee, maar als je bv. 512 leds wil aansturen scheelt dat enorm!

Edit: tekst aangevuld.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 februari 2014, 19:40:05 pm
Inderdaad ja, zover had ik nog niet gedacht :p
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 18 februari 2014, 09:54:58 am
Voor één 7-segment display is het misschien wat overkill, voor meerdere zeker nuttig.
Ik heb op die manier (multiplexen dan) eens een dot-matrix aangestuurd (8x30 leds)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 02 maart 2014, 14:31:08 pm
Een printje getekend voor een S88 bus op basis van stroomdetectie (16 ingangen) met een PIC 16F1516. Deze µC heeft voldoende analoge ingangen om minstens de 16 spanningsmetingen zeer snel uit te voeren. Het principe van spanningsmeting over dioden is al uitvoerig getest bij deze (http://forum.modelspoormagazine.be/index.php/topic,18599.msg226051.html#msg226051) schakeling.

(https://lh6.googleusercontent.com/eKqgjk5wl4PM9esGtWdbuOMc43D-gZYx-8qQVuTAfg=w387-h207-p-no)

Ik heb nog 4 in- en uitgangen over. Hierbij denk ik de goede werking van de S88 bus via een LED weer te geven. Is de LED groen dan werken de S88 stuursignalen (RESET, DATA, CLOCK, LATCH en voeding?) goed. Het is maar een idee?


geschatte kostprijs iets minder dan 5€ (exclusief de groene connectoren)


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 02 maart 2014, 15:32:05 pm
Nog een PIC projectje: Een Servo driver waar de NE555 vervangen wordt door een eenvoudig PIC µC.

De bedoeling is dat je met 2 potmeters de uiterste standen kunt instellen, en een potmeter voor de omlooptijd (omlooptijd is de tijd die de servo erover doet om tussen deze twee uiterste standen te draaien).

Meer hierover later in een ander draadje. (In een niet µC draadje, of een link ernaar, anders lezen vele dit niet   :( , soms begrijpelijk  :) , maar ik wil net deze forumleden bereiken)  Ik heb al het nodige aangekocht om zulke 8 printjes de maken en deze inclusief een goedkoop servo aan te bieden aan forumleden die niets kennen van microcontrollers (ik programmeer ze) en die graag is kennis willen maken met servo's. Ik denk dat ik dit pakketje kan aanbieden voor een 5 à 6€ stuk, ik verdien er niets aan, het is gewoon onze gemeenschappelijke hobby die treintjes hé  ;)  Ik heb al redelijk wat mensen verder geholpen via dit forum, en zelfs thuis om ze verder op weg te helpen, en ik voel me daarna altijd goed bij. Dus waarom zo is niet ...

(https://lh3.googleusercontent.com/-ZXBRoOJIiOQ/UxM75t90rSI/AAAAAAAAACk/T05WM1DIqpI/w1044-h487-no/servodriver+schema.png)

(https://lh3.googleusercontent.com/-TXtcyeLarlQ/UxM75ibuMpI/AAAAAAAAACg/LV4m5ebh2rs/w766-h335-no/servodriver+print.png)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 02 maart 2014, 15:53:04 pm
Goed initiatief, Geert, om je kennis en oplossingen "gebruiksklaar" te willen delen !
Thanks !!!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 20 maart 2014, 23:40:15 pm
Waar zijn we nu mee bezig ? Microcontrollers...

...Aan het overwegen om met een 'raspberry pi' te gaan 'spelen'...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 21 maart 2014, 03:28:32 am
cool gemaakt, Geert !!!   leuk dat je het wil delen.  Merci.

@Peter : doen !  het zijn fijne dingen, en eens je de programmeertaal machtig bent, kan je vele kanten uit.
Ik gebruik er zelfs eentje als media streamer in HD naar de tv  (XBMC  mediacenter software er op en instellen en klaar)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PietB op 21 maart 2014, 09:10:12 am
Dit gaat mijn pet te boven heren, zou er graag wat meer van weten.
Ik blijf dit draadje volgen, maar het moet niet te 'micro' worden hé!
Want de ogen worden er echt niet beter op.

grt Piet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 maart 2014, 23:10:52 pm
Microcontrollers wil niet per sé zeggen piepkleine chips, Piet  ;)
Zelf gebruik ik ze wel vaak in smd (TQFP44 en dergelijke) maar de meeste bestaan in DIL
pennetjes op 2.54mm - dus best te doen voor de gewone soldeerbout-gebruiker  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 22 maart 2014, 23:27:00 pm
Misschien eens rondsnuffelen op de arduino  http://www.arduino.cc/  website, Piet?

Zelf ben ik weer een klein stapje verder gekomen.
Een verkeerslicht maken met Arduino is niet echt moeilijk. (behoudens het maken van de sketch, dingen wijzigen aan die sketch en compileren is echt leuk!)
Enkele jaren terug was dat nog een examen werkstuk voor de MTS.

Ben nu in het bezit van een Velleman In Out shield KA05. Dat leek me wel een geschikt board voor het besturen van mijn schaduwstation. Het in elkaar zetten was niet zo'n probleem, wel verbaas ik me over de enorme hoeveelheid onderdelen op zo'n klein printje! Het werkte gelijk, de eerste keer, met de te downloaden sketch van de Velleman site.

Nu nog gaan uitzoeken hoe een sketch te maken om dit boardje samen met de Arduino Uno het schaduwstation te besturen ::)

http://www.velleman.eu/downloads/0/infosheets/datasheet_ka05_nl.pdf  Bron: Firma Velleman.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 23 maart 2014, 10:28:36 am
@Frank:   gebruik je een digitale centrale  die S88 kan verwerken ?
Dan kan je S88 melders gebruiken en dan via DCC communiceren met de Arduino.

Of je kan zelfs   (check es op  3rail.nl en vraag naar  René [Lokkie], die heeft dat als succesvol gedaan !) je eigen S88 decoders maken op basis van je arduino en wat losse componentjes.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 23 maart 2014, 16:24:32 pm
Nee dat heb ik niet Dani :)
Ben wel gaan kijken op het 3rail forum, vond niet waar ik naar op zoek ben.

Met de Arduino en KA 05 zou ik graag de sporen, wissels ( en misschien ook seinen) schakelen van het schaduwstation.
Dus: ik stuur een analoge trein het station in terwijl de Arduino ervoor zorgt dat dat gebeurd zonder dat er iets tegen elkaar rijdt.
En de trein deftig stopt onder de lichtsluis.
Dus bezetmelding  en de lichtsluizen aansluiten voor de stopplaatsen op het KA05 / Arduino duo.
Er zijn 2 x 2 (in een keerlus, achter elkaar, en tegengesteld) wachtsporen, dus als trein 1 vertrekt dient daarna trein 2 naar het spoor van trein 1  te rijden.
En daar te wachten tot de volgende opdracht.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 24 maart 2014, 08:44:07 am
dat moet zeker lukken met Arduino en dat shield.     als je hulp nodig hebt weet je me te vinden hee
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 maart 2014, 19:35:08 pm
Effe een goed goedkoop 3.2" TFT'tje met touchpanel gekoppeld aan een 32bit Cortex M4 (STM32F407).  En vliegen dat dat beest doet! 72fps!!
Klein trucje van de Cortex M4 toegepast: Flexible Static Memory Controller (FSMC).  De LCD aanspreken komt nu neer op wat data wegschrijven in een geheugen locatie, razendsnel dus...
Volgende stap: aansluiten van de SD-card reader en de ethernet controller.
Toepassing: Domotica en m'n TreinController.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 maart 2014, 19:40:04 pm
Of je kan zelfs   (check es op  3rail.nl en vraag naar  René [Lokkie], die heeft dat als succesvol gedaan !) je eigen S88 decoders maken op basis van je arduino en wat losse componentjes.
Ik gebruik S88 gebaseerd op latches en shift registers, komt geen bal programmeren aan te pas...  Een klassiek schema dat je her en der kan vinden op het Internet, met wat verbeteringen.  Ik nu zo'n 11 van die dingen in serie staan, elk goed voor 16 posities.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Frank_N op 31 maart 2014, 20:35:26 pm
dat moet zeker lukken met Arduino en dat shield.     als je hulp nodig hebt weet je me te vinden hee

Thnx Dani :)
Weer een klein stapje verder: http://blog.minibloq.org/p/download.html
Grafisch programmeren voor beginnelingen, plus Nederlandstalige uitleg 8)
Het leuke is dat je aan de hand van afbeeldingen een sketch kunt maken en die vervolgens importeren in de UNO.
Mogelijk hebben andere digi-n00ps  hier ook wat aan.

Eerst maar weer wat "spelen" daarna uitzoeken hoe inputs te configureren naar outputs, met de Velleman KA05.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 maart 2014, 21:16:04 pm
Tijdens het testen, bouw ik mijn elektronicaprojecten steevast op op een breadbordje.  Nu zit ik al jaren te vloeken dat ik steeds een voeding aan dergelijk breadbordje moet hangen om de schakeling te laten werken.  De ene keer 5V, de andere keer 3,3V, 12V, ...  Telkens een andere voeding en hopen draden.

Mijn 5V en 3,3V probleem eindelijk opgelost.  Bij de chinaman een compact printje gevonden met een 5V en 3,3V gestabiliseerde voeding, een schakelaartje en een 12V adapter aansluiting.  Het printje is onderaan van stekkertjes voorzien waardoor het rechtstreeks op de voedingslijntjes van het bordje kan worden geprikt. Kabelsaladeprobleem al deels opgelost:

(http://www.pctoytoy.be/2014/20140331_1.jpg)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 31 maart 2014, 21:18:06 pm
Héél handig!!!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 31 maart 2014, 21:58:49 pm
Peter, dat lijkt me inderdaad erg handig.
Zit daar ook een USB aansluiting op?  Kun je daar wat mee doen, op dat breadboard ?

Kun je daar de referentie van doorgeven?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 31 maart 2014, 22:05:47 pm
Fijn boardje ! Hier ook interesse naar de referentie ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 31 maart 2014, 22:35:55 pm
Als er bredere interesse is, kunnen we gezamelijk bestellen, en de transportkosten drukken ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 31 maart 2014, 23:10:49 pm
Hier ook interesse. Eventueel in combinatie met een extra breadbordje (heb er maar één en dat is er meer dan één te weinig)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 01 april 2014, 08:54:09 am
ik heb er al enkele gevonden aan zeer schappelijke prijzen....

Denk dat ik er alvast een paar ga bestellen.

dit is er eentje van :   http://www.benl.ebay.be/itm/Perfect-High-Quality-MB102-Breadboard-Power-Supply-Module-3-3V-5V-Arduino-Board-/221036730022?pt=UK_Sound_Vision_Other&hash=item3376d0d6a6

en voor RIan (met breadboard en jumper wires er bij. OPGELET is wel een Half Size breadboardje ! ) :  http://www.benl.ebay.be/itm/HOBBY-COMPONENTS-Breadboard-Kit-Power-Supply-Module-Jumper-Cables-Breadboard-/131142448336?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item1e88b2f4d0

Bij Hobbycomponents heb ik al vaker besteld en die leveren prima service !



dit is de goedkoopste die ik kon vinden (binnen Europa toch):
http://www.benl.ebay.be/itm/131153081491?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649

Ook met deze leverancier (TradeFlaire) heb ik hele goede ervaringen en ze versturen heel snel.   Ik heb er meteen 4 besteld.
Soms vind je ze goedkoper maar als je dan naar de verzendingskosten kijkt ben je duurder uit

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 01 april 2014, 09:02:25 am
en voor wie  "Chinees" wil gaan en goedkoper bestellen, maar langer kan wachten :

http://www.benl.ebay.be/itm/1PCS-Board-MB102-Breadboard-Power-Supply-Module-3-3V-5V-For-Arduino-/131153669445?pt=LH_DefaultDomain_0&hash=item1e895e2d45


http://www.benl.ebay.be/itm/MB102-Power-Supply-Module-3-3V-5V-Breadboard-Board-830-Point-65PCS-Jumper-cables-/200958071988?pt=LH_DefaultDomain_0&hash=item2eca08d4b4


een betrouwbare verkoper : (GC_market)

http://www.benl.ebay.be/itm/1PCS-High-quality-MB102-3-3V-5V-Breadboard-Power-Supply-Module-For-Arduino-Board-/290906081325?pt=LH_DefaultDomain_0&hash=item43bb5a882d

en de mini versie :

http://www.benl.ebay.be/itm/Breadboard-Power-Supply-Module-5V-3-3V-For-Arduino-No-Breadboard-good-/121309359568?pt=LH_DefaultDomain_0&hash=item1c3e99edd0

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 01 april 2014, 10:02:53 am
De verzendingskosten zijn gratis, dus besparen door een gezamelijke aankoop gaat extra verzendingskosten genereren om de zaken nadien onderling te versturen.  De aankoop wordt dan ook groter met meer kans op een (langdurige) douanecontrole.

Breadboard met voeding: http://www.benl.ebay.be/itm/330908498390?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649

Voeding alleen: http://www.benl.ebay.be/itm/230965526612?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649

En zoals Gerolf het zo mooi kan zeggen: de 'bollenwinkel' voor de elektronica minded: http://stores.benl.ebay.be/ChipWorld?_trksid=p2047675.l2563

Die USB aansluiting is een USB-A en ik vermoed dat die enkel dient om een extra apparaat aan te sluiten (enkel voeding).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 01 april 2014, 22:00:45 pm
Voor de snelle gasten: op circuitsonline verkoopt er iemand een gigantische voorraad pic16f876 µC nieuw (8 a 900 zegt hij) prijs per stuk €1 (smd) Ik heb een voorraadje ingedaan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 april 2014, 21:19:08 pm
Al een tijdje met servo's en servodecoders aan het 'stoeien' maar her en der duiken problemen op:  oa voor het inbouwen, wil ik de servo op hun middenstand zetten (puls = 1500µs).  De eerste testen wil ik uitvoeren met een zo klein mogelijke uitslag (1400µs tot 1600µs).  Beide uitersten (linkse en rechtse stand) wil ik in µs nauwkeurig in de decoders kunnen programmeren.  De ene servo slaat links uit bij 1ms, de andere naar rechts.  Ook wil ik de servo snel en langzaam tussen zijn beide ingestelde uitersten over-en-weer laten gaan.
Tijd voor een servotester die aan mijn behoeften voldoet: "Servo Tester Deluxe".

Stand van zaken:
- Bediening met slechts één rotary encoder met drukschakelaar.  LCD display (2*16 karakters) voor info.  Potmeter voor de servobediening.
- Volledig menu gestuurd met indicatie of er nog volgende of vorige menu-items zijn.
- Waarden worden ingegeven met de rotary encoder.  Per 'klik' één waarde (positief of negatief).  Met een eenvoudig in te stellen vermenigvuldigingswaarde (x1, x10, x100, x1000 - zichtbaar met knipperende led en op het display) kunnen heel vlug grotere waarden worden ingesteld.
- LCD backlight schakelt zichzelf na x-tijd inactiviteit langzaam uit en bij een draai aan de encoder terug langzaam aan (energiebesparend).
- Code: pseudo-multi-tasking: interruptgestuurde events worden via een dispatcher doorgestuurd naar sub programma's
- Instellingen worden opgeslagen in EEPROM.

Processor: 18f2550 (momenteel: 18K van de 32K flash gebruikt - 670 van 2048 ram gebruikt).  18f2550 omdat die hier op zijn 2x14 pootjes op mijn bureau zat rond te kruipen en ik werd verleid door zijn ruim geheugen (rom en ram) en de tot 48MHz op te krikken klokfrequentie zodat ik me aan multi-tasking kon wagen.

Menu:
- Potmeter: door een in te stellen hoekverdraaiing van de potmeter draait de servo tussen beide (in te stellen) uitersten.
- Nieuwe servo: servo komt in de neutrale stand (1.5ms) en beide uitersten worden beperkt (links = 1.4ms en rechts = 1.6ms)
- Heen & weer snel: links - (in te stellen) pauze - rechts - pauze - links - ...
- Heen & weer traag: links - (in te stellen) pauze - langzaam (in te stellen tijd) naar rechterstand - rechts - pauze - langzaam naar linkerstand - ...
- Motorola decoder: volgende versie!

Instellingen:
- Waarde links: waarde minimum <= waarde links <= waarde maximum
- Waarde rechts: waarde minimum <= waarde rechts <= waarde maximum
- Potmeter links: -150° <= potmeter links <= 0°
- Potmeter rechts: 0° <= potmeter links <= 150°
- Heen & weer snel tijd: 1s <= tijd <= 60s
- Heen & weer traag tijd: 1s <= tijd <= 60s
- Heen & weer snel pauze: 1s <= pauze <= 60s
- MM adres links: geldig MM adres (visueel IB rood-groen adres - Marklin keyboard 6040: keyboard nummer + rood-groen-nummer)
- MM adres rechts: geldig MM adres (idem)
- Servo minimum: 0.5ms <= servo minimum <= 2.5ms
- Servo maximum: 0.5ms <= servo maximum <= 2.5ms
- Backlight: 102/1024 <= pwm <= 1024/1024

een impressie van enkele menu-weergaven (met "zelf gemaakte karakters"):

(http://www.pctoytoy.be/2014/20140406_1.jpg)

Momenteel ongeveer 2130 regeltjes programmacode.  De MM decoder zal er nog enkele (honderden?) aan toe voegen...

Volgend  werk: de MM decoder implementeren en vooral de code optimaliseren.

Indien klaar plaats ik een link naar het volledige project (schema, hex-file, en natuurlijk ook de (JAL) code).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 06 april 2014, 21:23:45 pm
Succes, Peter.

Wordt natuurlijk met argusogen gevolgd  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 06 april 2014, 21:39:15 pm
Indrukwekkend verhaal hoor ! Ik ben benieuwd
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 april 2014, 22:02:26 pm
...Ik ben benieuwd...

Interesse in PIC's  ;) ;) ;)

Ik ga geen lang gewaad aan doen in een overtuigingsronde voor "de-cultuur-van-de-pic" (met een 'C' - want ik zie sommige forumgenoten al met andere gedachten  :D).

Ik ga wel een efforke doen om mijn gedachtengang in soort pseudo controller taaltje neer te pennen - grofweg de flow van het programma beschrijven - de eigenlijke flow zal in de (JAL) code te zien zijn.


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 06 april 2014, 22:15:50 pm
Ziet er goed uit.  Wat bedoel je met heen en weer snel, traag en pauze tijd?


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 april 2014, 22:39:04 pm
...Wat bedoel je met heen en weer snel, traag en pauze tijd?

Heen en weer snel: links (pulslengte vb 1ms) - puls blijft gelijk gedurende de in te stellen pauze-tijd - rechts (nieuwe pulslengte vb 2ms) - puls blijft gelijk gedurende in te stellen pauze-tijd - ...   - zo kan je de reactietijd van je servo 'zien' (van een ingestelde linker- naar een ingestelde rechterwaarde).

Heen en weer traag: links (puls vb 1000µs) - langzaam (1001µs - 1002µs - 1003 µs - ...) gedeeld door een in te stellen tijd (tot vb 1997µs - 1998µs - 1999µs - 2000µs) - rechts (dan een -in te stellen pauze tijd- op rechts) en dan terug langzaam (vb 2000µs - 1999µs - 1998µs) naar links.  Dan op links terug een in te stellen pauze en dan terug langzaam naar rechts.  Alle waarden (hier 1000µs en 2000µs zijn als links- rechtswaarden in te stellen).  Op die manier zie je het 'schokgedrag' van je servo (pulsjes per µs variërend - en kijken - voelen hoe de servo erop reageert).

Ondertussen al wel duidelijk het verschil gezien/gevoeld/gehoord tussen servo's van 2 Euro en servo's van +20 Euro.  Maar voorlopig volstaan die van 2 Euro voor al wat ik voor ogen heb!  Ik moet alleen rekening houden met hun 'karakter'  ;) .






Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Opa-Bullcat op 06 april 2014, 22:51:05 pm
En wat is het verschil tussen een servo van 2 en 20 euro, behalve 18 euro Peter?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 06 april 2014, 23:06:51 pm
En wat is het verschil tussen een servo van 2 en 20 euro, behalve 18 euro Peter?

Die 18 Euro  :D !

De beweging voelt/ziet er toch wel wat anders uit.  Maar in onze hobby, om een wissel om te leggen of een sein te verzetten, zijn volgens mij die 2 Euro servo's meer dan voldoende.  Alleen moet je hun 'karakter/beperkingen/mogelijkheden' kennen.
+20 Euro: stuurt gemakkelijk 180° uit.  2 Euro: beperk je tot 90° (in de comfort-zone van de servo).

Ook de reactiesnelheid is een enorm verschil tussen beide prijsklassen.  Maar nogmaals: niemand wil zijn wissel links-klikklak-rechts.  Met de 2 Euro servo is dat links-bzzzjjj-bzzzjjj-bzzzjj-bzzzjj-rechts.  En dat wil je toch?  ;)




Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Opa-Bullcat op 07 april 2014, 02:52:18 am
Hallo Peter, ja ik denk alles beter als klik klak dus. Maar ik moet nog met de baan starten maar eerst moet me hobby ruimte op het dak af zijn :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PietB op 07 april 2014, 09:38:32 am
Ook de reactiesnelheid is een enorm verschil tussen beide prijsklassen.  Maar nogmaals: niemand wil zijn wissel links-klikklak-rechts.  Met de 2 Euro servo is dat links-bzzzjjj-bzzzjjj-bzzzjj-bzzzjj-rechts.  En dat wil je toch?  ;)
Ja dat is waar maar een servo van 20 Euro mag dan volgens jou een 'hardloper' zijn, bij een goede decoder is de draaisnelheid keurig aan te passen naar 'stapvoets' is mijn ervaring.
Of bedoel je dat niet Peter?

grt Piet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 07 april 2014, 12:32:26 pm
Nieuwe servosturingen staan ook om mijn lijstje voor deze maand.
Eerst een nieuw "universeel aansturingskastje" (ben ik mee bezig)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 april 2014, 18:55:47 pm
Ook de reactiesnelheid is een enorm verschil tussen beide prijsklassen.  Maar nogmaals: niemand wil zijn wissel links-klikklak-rechts.  Met de 2 Euro servo is dat links-bzzzjjj-bzzzjjj-bzzzjj-bzzzjj-rechts.  En dat wil je toch?  ;)
Ja dat is waar maar een servo van 20 Euro mag dan volgens jou een 'hardloper' zijn, bij een goede decoder is de draaisnelheid keurig aan te passen naar 'stapvoets' is mijn ervaring.
Of bedoel je dat niet Peter?

grt Piet.

Juist wel!  Je hebt geen servo van +20 Euro nodig om een wissel om te zetten.  Bij de meeste decoders die ik ken, kan je de snelheid in stellen zodat je een snelle servo kan vertragen.  Moet je wel eens snel schakelen dan ga je wel een duurdere servo nodig hebben (voor dat snel schakelen, zie ik in onze hobby niet direct een toepassing).

Die schakelsnelheid is gewoon een vaststelling.  Ik heb buiten goedkopere servo's ook nog enkele duurdere exemplaren liggen (uit een vorige hobby) en het is wel leuk om die eens te vergelijken met dezelfde parameters.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 mei 2014, 09:52:45 am
Een prototype voor een "nogal universele" led-sturing:

(http://www.meb.gerolf.be/sturing/bm/auto/ledmatrix0.JPG)

Uiteraard ter plaatse af te regelen, en bedoeld om tot 64 leds in en rond gebouwen aan te sturen:
Individuele lichtsterkte, de manier waarop ze aan- en uitgaan (TL, kaars, ...), volgorde, ...

Het aanhangende printje "effe gauw" zelf gemaakt, om de elektronica en software te kunnen testen  ;)

Het definitieve plaatje zal er ietsje anders uit zien, vooral de smd-zijde onderaan
Er waren in eerste instantie nogal wat ontwerpfouten  ::)
Maar daarom is het ook een prototype, natuurlijk  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 06 mei 2014, 10:27:21 am
Gerolf, ik sta perplex hoe je die led-matrix hebt kunnen solderen, met die microbruggetjes ... zonder kortsluiting, zonder klodders! Ik ben diep onder de indruk. En ben ook wel benieuwd waarvoor je dit gaat gebruiken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 06 mei 2014, 10:50:03 am
Prachtig, Gerolf !
Ideaal, als je veel lichtjes aan te sturen hebt  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 mei 2014, 12:11:34 pm
Gerolf, ik sta perplex hoe je die led-matrix hebt kunnen solderen, met die microbruggetjes ... zonder kortsluiting, zonder klodders! Ik ben diep onder de indruk.
Bedankt, Michiel. Het viel me beter mee dan ik dacht. Het zijn wel 0603-ledjes, maar mijn soldeerpasta-mix werkt wonderwel

Citaat
En ben ook wel benieuwd waarvoor je dit gaat gebruiken.
Zoals ik oppervlakkig omschreef: Voor de verlichting in en rond "gebouwen".
Elke led is individueel aan te sturen, ook hun opstart- en uitdoof-eigenschappen (knipperende TL, kaarslicht, ...)
Er kunnen sequenties geprogrammeerd worden (iemand die in een gebouw alle lichten uitdoet, ontwakend huis, ...)

Door de matrix-opzet heb je minder draden nodig naar je gebouwen en straten.
Een microcontroller regelt alles, en véél parameters zijn "ter plaatse" af te regelen

@ Jean: bedankt.
Tot 64 leds per print, en er gaan 6 van die printjes uit één Eurocard.
Eens het prototype OK is, zijn er dus op korte tijd véél lichtjes aan te sturen ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 06 mei 2014, 12:21:31 pm
Gerolf, voor de regeling van de intensiteit van de leds in een matrix, gebruik je waarschijnlijk een methode om de leds per duty-cycle te laten knipperen?

Heb je al eens een foto genomen van de koersborden van een Desiro stel? Onmogelijk om het opschift volledig en goed op foto te krijgen. Knipperende leds!  >:(

Ben je niet bang dat foto's nemen van je baan met "flikkerlicht" een beetje anders uitpakt dan wat we zichtbaar lijken te zien? Gewoon een vraag dat ik me stel...  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 mei 2014, 12:35:12 pm
De dutycycle zit bij mij behoorlijk kort: pakweg 6 milliseconden. (150Hz refresh-rate)
De lichtintensiteit is in te stellen tussen 0 en 63. Dat is waarschijnlijk overkill.
Stel dat ze ik regel tussen 0 en 31 halveert de refresh-tijd. Misschien doe ik dat nog wel

PWM-Led-verlichting en heel korte sluitertijden gaan inderdaad niet samen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 juni 2014, 15:19:53 pm
Update: wat printjes méér voor de Led-sturing:

(http://www.meb.gerolf.be/sturing/bm/auto/ledmatrixgroep.JPG)

- Ik ben bezig om wat stuurprintjes méér te maken
- maar de meeste printjes op de foto dienen om vanuit de matrix naar de gebouwen te gaan
    (de matrix opsplitsen in kanalen, en via flatcables naar de scenery)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 06 juni 2014, 16:52:55 pm
fraai werk, G !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 06 juni 2014, 18:15:40 pm
Bedankt, Dani
Wat je op de foto ziet is trouwens maar een deel  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 09 juni 2014, 12:53:48 pm
Hola Gerolf, knappe printjes!
Welke microcontroller gebruik je trouwens?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 09 juni 2014, 13:29:43 pm
Ben zelf ook nog bezig maar dan vooral met de software.  M'n Ethernet controller krijgt stillaan voet aan wal, deze zal gebruikt voor m'n domotica en m'n modelbaan.  Enig nadeel, je hebt er een stevige microcontroller voor nodig.  Ik gebruik nu al een tijdje een 32-bit STM32F407 (Cortex M4).  Stevige knaap, kost zo'n 6€, oftewel 20€ op een discovery board; maar je hebt wel meteen 1MB EEPROM en 192KB RAM.  En voor de software van een netwerk controller (driver + IP stack) geen overbodige luxe, je bent al snel 64KB aan RAM kwijt...

70% van m'n ethernet controller is nu klaar, en eindelijk draait ie zoals ik wil: met buffering, mooi gestructureerde code per laag, en protocol control blocks (PCB's) tussen de transport en de applicatie lagen.  Dit moet het uiteindelijk m'n IP stack worden:
(http://patrickleyman.be/blog/wp-content/uploads/2014/06/IPStack-300x189.png)

En om daar te geraken, gebruik ik de volgende opzet:
(http://patrickleyman.be/blog/wp-content/uploads/2014/06/EOS-5D-Mark-III-101-2285-1024x682.jpg)

Heb 'm deze voormiddag al laten proefdraaien met een ENC28J60 network adapter (10 Mbit), ARP en Ethernet II, ICMP en IPv4, UDP en als laatsten DHCP, DNS en NTP.  Later volgen nog TCP en de blokjes die daarmee verbonden zijn.  Maar de eerste testen zijn al meer dan behoorlijk: boeltje opstarten, DHCP adres oppikken, klok via NTP 1x per uur synchroniseren (moet server via DNS gaan ophalen), en ondertussen wordt de boel gebombardeerd met pings (ICMP) vanuit m'n netwerk.  Na 4 uur draaien geen enkel pakket verloren.
(http://patrickleyman.be/blog/wp-content/uploads/2014/06/EOS-5D-Mark-III-101-2287-682x1024.jpg)

Waar ga ik die voor gebruiken?
Eerst en vooral m'n domotica.  Elke kamer wordt uitgerust met zo'n controller (TFT + touchscreen, sensoren, netwerk controller, luidsprekertje, ...).  Later m'n modelbaan, op de meeste plaatsen zonder TFT, daar waar nodig komt er een TFT.

Kostprijs:
Hardware: µC 5€/20€, TFT: 10€, ENC28J60: 2€, sensoren: 1-10€
Software: ellendig veel werk, maar wel leerzaam ;-)

Een 100 Mbit netwerk adapter kan ook, is enkel wat duurder.  Een Gbit module zou zinloos zijn, de µC kan die snelheid toch niet aan tenzij met gigantisch veel buffering.

En nu verder werken aan het TCP stuk :P...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 09 juni 2014, 13:48:45 pm
Indrukwekkend  8) 8) 8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 09 juni 2014, 15:39:17 pm
Waar is mijn chinees-nederlands woordenboek alweer ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 09 juni 2014, 16:02:33 pm
Leve het OSI-model  ;D ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 09 juni 2014, 16:08:41 pm
Waar is mijn chinees-nederlands woordenboek alweer ;D
Allez nu Rian, jij als aspirant elektronicus met nog wat IT kennis...  dit zou voor jou allemaal omgangstaal moeten zijn!
Maar soit voor zij die meer uitleg willen, ga eens kijken op m'n blog of vraag maar raak...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 12 juni 2014, 08:55:14 am
Zo'n TFT-scherm lijkt interessant. Is het moeilijk om aan te sturen?

Hola Gerolf, knappe printjes!
Welke microcontroller gebruik je trouwens?

Bedankt. Ik gebruik verschillende AtMega 's - van 4 tot 128K flash (en zo van 0.5 tot 4K Eprom)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 12 juni 2014, 19:18:02 pm
Zo'n TFT-scherm lijkt interessant. Is het moeilijk om aan te sturen?

Hola Gerolf, knappe printjes!
Welke microcontroller gebruik je trouwens?

Bedankt. Ik gebruik verschillende AtMega 's - van 4 tot 128K flash (en zo van 0.5 tot 4K Eprom)
Aha 8-bitters zo te zien.

Neen, zo'n TFT is niet moeilijk om aan te sturen.  Je hebt verschillende modi: 8-bit, 16-bit of serieel...  Kwestie van een weerstandje op de LCD flexible print te verzetten (wel een 0603'tje).  Ik gebruik bijna altijd de 16-bit configuratie omdat er heel wat data over 'de lijn' moet.
Ik heb er een library voor geschreven, maar je kan er evengoed vinden op Internet.  Ik heb versies voor PIC (8-bit µC met 16-bit aansturing) en Cortex-M4 (32-bit µC let eveneens 16-bit aansturing).  De PIC schrijft één beeldje per seconde (240x320 pixels), de Cortex M4 kan tot 72 beelden per seconde.
De enige beperking is je ROM geheugen, je hebt wat geheugen nodig om de fonts op te slaan.  Eén gelimiteerd klein font (95 karakters van 8x12 pixels) vraagt 190 bytes.  Grotere fonts gaan al gauw naar een enkele kilobyte...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 13 juni 2014, 22:39:11 pm
Deze late namiddag nog een beetje met mijn Pi gespeeld (voor diegene met schunnige gedachten ZONDER -et-). 

Pi draait nu zelfstandig (zonder toetsenbord, muis en monitor).  Via VNC neem ik die over op een PC in mijn netwerk.  Komt hij op een 'vreemd' netwerk, stuurt hij mij een mailtje als hij merkt dat hij een ander IP adres heeft zodat ik hem op dat 'vreemd' netwerk ook kan overnemen.

Eerste werkjes zijn reeds gedaan: de Pi is voorzien van een LCD en 5 druktoetsen.  De eerste stappen zijn gezet om een opstartmenu op dat LCD te toveren (zodat ik oa een deftige shutdown kan doen zonder overname via VNC).

Een extra Pi ligt al in mijn schuif.  Mijn garage CD MP3 speler heeft serieuze mankementen en wordt op termijn vervangen door een Pi + USB-stick MP3 speler.

Modelbouwbedoeling?  Via I²C - 4 controllerkes (PIC 16F88 - telkens zelfde programma - I²C adres hardwarematig instelbaar) aansturen voor een dag-nacht verlichting (4 controllers met telkens 1 PWM - rood, groen, blauw en wit - PWM frequentie enkele KHz en 1024 stappen en geen 72Hz en 8 stappen zoals op de commerciële ledstripsturingen waar je de leds ziet knipperen  :( ).  Een (misschien grafisch) progje op de Pi om de verschillende curven (intensiteit en timing) voor de dag-nacht te kunnen instellen en enkele effecten (oa bliksem - tegenwoordig een HOT item  ::) ).  Later misschien gesplitste RGB+W leds en extra controllers om een variërend zonlicht te kunnen simuleren...
De Pi gaat 'dirigent' spelen en begint met: 'we spelen met een timing van X ms' (de maat).  Daarna geeft hij aan elke controller individueel de opdracht: 'Van je huidige instelling ga je gedurende je timing langzaam over naar de nieuwe waarde die ik je nu geef'.  Na briefing aan alle controllers komt de opdracht: 'NU overgaan naar de nieuwe waarde gedurende de vooraf afgesproken tijd'...

Python is toch een krachtige taal...  Maar ik voel me weer een beginner en moet nog veel leren :-[ ...  Gelukkig is het de x-de taal die ik leer en is het gewoon een andere syntax.



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 13 juni 2014, 22:56:40 pm
de logica en strategie achter programmeren blijft dezelfde ongeacht de taal, dus het is inderdaad een "zoveelste nieuwe" schrijfwijze voor dezelfde IT babbel :-)

Succes er mee...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 21 juli 2014, 10:15:21 am
Nevenprojectje:
 een aansturing voor RGB-lichtstrips, met 2 extra kanalen voor bvb een witte strip of ...

(http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.jpg)

Behalve een AtMega16 en 5 Mosfets zijn het vooral connectoren (en C en R, uiteraard)
Het kleine printje is een extra eindtrap - om meerdere strips "power" te kunnen geven
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: SuSke op 21 juli 2014, 11:43:05 am
Denk dat we op de club eens moeten praten Gerolf :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 21 juli 2014, 18:20:08 pm
Gerolf, knip jij die pinnen zomaar af? Wat als je nu een uitgangetje tekort komt voor "iets" waar je pas later aan denkt? Als je die gewoon naar een smd pad van 1mm of zo brengt kan je altijd een draadje aan solderen indien nodig. Ik mis eigenlijk ook wel wat ontkoppeling of staat die aan de andere kant?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 21 juli 2014, 21:21:56 pm
Gerolf, knip jij die pinnen zomaar af? Wat als je nu een uitgangetje tekort komt voor "iets" waar je pas later aan denkt? Als je die gewoon naar een smd pad van 1mm of zo brengt kan je altijd een draadje aan solderen indien nodig. Ik mis eigenlijk ook wel wat ontkoppeling of staat die aan de andere kant?
Ben ook van die mening, ik zou ook nooit pinnetjes afknippen, maar ze op een geïsoleerd eilandje laten zitten.  Die 'extra' pinnetjes zijn soms superhandig om iets te gaan debuggen met de oscilloscoop eraan.

Gerolf kennende, zal de ontkoppeling wel aan de andere kant zitten.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 21 juli 2014, 21:59:50 pm
Citaat
Gerolf kennende, zal de ontkoppeling wel aan de andere kant zitten.

Vraag het omdat een straffe op het werk ontkoppeling niet nodig vond omdat er toch maar opamps en relaisdrivers opstaan en die schakelen maar maximaal om de seconde. De cpld die erop staat ook, die heeft een interne klok van maar enkele Hz. Dat ding is wel gevoelig tot boven de 100 MHz... Nu reset die wel als er een relais omgaat, maar het is niet omdat er geen ontkoppeling op de print staat. Er staan toch elco's in het hoekje waar de voeding toekomt? Ahhhrrrrgggggg...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 juli 2014, 05:16:37 am
Wees gerust, ontkoppeling is er.
Pennetjes afknippen: biedt meer ruimte voor printbanen op de (enkelzijdige) printen.
In dit voorbeeld gaat het om veel overbodige pennetjes. Ik heb er nog maar zelden spijt van gehad.
Ik zou er wel een gewoonte van moeten maken om minstens één "overbodig" pennetje van een led te voorzien  :-[
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 22 juli 2014, 19:32:43 pm
Ah, het is enkelzijdig. Doe ik zelf niet meer. Een massavlak langs 1 kant is zo handig dat ik dat niet zou willen missen ook al is het wat meer boren en doorverbindingen solderen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 28 juli 2014, 16:36:25 pm

Vraag het omdat een straffe op het werk ontkoppeling niet nodig vond omdat er toch maar opamps en relaisdrivers opstaan en die schakelen maar maximaal om de seconde. De cpld die erop staat ook, die heeft een interne klok van maar enkele Hz. Dat ding is wel gevoelig tot boven de 100 MHz... Nu reset die wel als er een relais omgaat, maar het is niet omdat er geen ontkoppeling op de print staat. Er staan toch elco's in het hoekje waar de voeding toekomt? Ahhhrrrrgggggg...

In 1976 ontwierp ik een digitale afstandsmeter voor in de auto (rally). Mijn prototype resette steeds bij het gebruik van de "claxon" (= relais met een enorm stoorpotentieel) tot ik in de voedingslijn van mijn teller dit monteerde : een ferrietkern...

(http://p.globalsources.com/IMAGES/PDT/B1049923660/EMI-Ferrite-Cores.jpg)

Nooit nog last gehad van getoeter.

Erik
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 07 augustus 2014, 21:17:05 pm
Test-scenario met mijn RGBWX-sturing:

http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.wmv
of ook (ander bestandsformaat) :
http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.MOV
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 07 augustus 2014, 21:38:35 pm
Zijn dat ontploffingen die we zien?  :o
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 07 augustus 2014, 21:40:26 pm
Ik wou even uittesten of een bliksem te simuleren valt binnen een "scenario" ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 07 augustus 2014, 22:20:38 pm
Ik wou even uittesten of een bliksem te simuleren valt binnen een "scenario" ;)
Zijn die leds daar 'snel' genoeg voor?  Ik zag wel iets flitsen, maar dacht dat het aan de camera lag :-[
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 augustus 2014, 22:32:51 pm
de laatste hand leggen aan de software voor de liftsturing...
Het zal goed komen.  En dan komt de allergrotoste uitdaging...  de mechanische constructie en de sturing "verenigen" en op elkaar afstemmen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 07 augustus 2014, 22:53:45 pm
... Zijn die leds daar 'snel' genoeg voor?   ...

Misschien de flits iets korter maken, en de spanning tijdens de flits wat optrekken om een fellere kleur te bekomen ?
In elk geval is het een mooie en eenvoudige aansturing !  Knap en zéér bruikbaar  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 augustus 2014, 01:28:06 am
Ik zag wel iets flitsen, maar dacht dat het aan de camera lag :-[

't was een snel-snel filmpje. Ook de kleuren worden niet echt goed in beeld gebracht.
De minimale flits-lengte zat op 0.1 sec, maar ik heb hem probleemloos teruggebracht naar 1/30 sec.
Sneller kan waarschijnlijk ook, maar dat is genoeg voor een bliksemschicht.

Er is in elk geval veel mogelijk met de sturing:
- 5 kanalen, dus RGB + warmwit + "nog iets" (bvb Sunny white)
- basisprintje kan 4 ampère per kanaal uitsturen, maar kan ook (100?) extra eindtrapjes met evenveel vermogen aansturen
     ... maar voor zulke grote hoeveelheden heb je een héél kloeke 12V-voeding nodig
- 8-bit PWM per kanaal - dus intensiteit regelbaar in 255 stapjes
- maximale basis-intensiteit regelbaar per kanaal (om "maximaal daglicht" af te regelen)
- 25 "basistinten" in te stellen (in 255 stapjes per kanaal)
- 15 scenario's met elk maximaal 12 stappen
    elk scenario kan naar een volgend verwijzen (of naar zichzelf)
    scenario's zijn eventueel extern aan te sturen (4 bits = 15 scenario's)
    elke stap = één van de 25 tinten, en hoeveel tijd om tot die stap te komen
- aansturing vanuit en terugkoppeling naar een "centrale" is mogelijk

Het demo-filmpje toont een kort en snel scenario - anders zou het een (saai) filmpje van enkele uren zijn ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: gardevil op 08 augustus 2014, 10:05:04 am
Test-scenario met mijn RGBWX-sturing:

http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.wmv (http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.wmv)
of ook (ander bestandsformaat) :
http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.MOV (http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.MOV)

Gerolf,

een bliksem is niet steeds een flits, maar meerdere flitsen kort op elkaar. Weet niet of je dat kan simuleren.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 08 augustus 2014, 10:38:28 am
Gerolf,
een bliksem is niet steeds een flits, maar meerdere flitsen kort op elkaar. Weet niet of je dat kan simuleren.

Dat kan zeker, ook de intensiteit kan je variëren (enkele scenariostappen, enkele "tinten") ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: SuSke op 08 augustus 2014, 12:22:23 pm
Ik ken er al een leuke toepassing voor  :)  ;)  8)  :o
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: OlivierV op 08 augustus 2014, 17:49:21 pm
Test-scenario met mijn RGBWX-sturing:

http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.wmv
of ook (ander bestandsformaat) :
http://www.meb.gerolf.be/sturing/bm/scenery/RGBWX.MOV
Dat locje dat op het filmpje in de achtergrond ligt komt mij redelijk bekend voor. ;)

Ook knap om te proberen uiteraard die bliksem.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 09 augustus 2014, 00:26:17 am
Dat locje dat op het filmpje in de achtergrond ligt komt mij redelijk bekend voor. ;)
Ook knap om te proberen uiteraard die bliksem.

Dat locje: Ooit eens "ergens" gekocht, om er "ooit" iets leuks mee te doen  ::)
Ik zit nog te overpeinzen om op een handigere manier de data in eprom te zetten. Wordt vervolgd, denk ik  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 augustus 2014, 21:13:16 pm
Nog eens na enkele maanden wat verder gedaan met µC projectjes. Een S88  melder met stroomdetectie. Een printje geëtst (weliswaar niet te lang in het etsbadje gelegen). En wat testen uitgevoerd. Ondertussen een nieuw printje getekend en eerstdaags verder testen.

(https://lh3.googleusercontent.com/-tZgI2E0JmFE/UxMvB8sAGCI/AAAAAAAAAB0/I7h8jwQt9aE/w652-h349-no/s88%2Bterugmelder%2Bmet%2Bstroomdetectie.png)

(https://lh3.googleusercontent.com/-6hR8VlKch3U/Uy2n-qIiRJI/AAAAAAAAAEA/XrgmDcMU2i4/w1035-h577-no/DSCF3203.JPG)

(https://lh4.googleusercontent.com/-MMGFubprJbw/U_t-WolL2EI/AAAAAAAAAMg/sFqBCdmQhKc/w648-h389-no/WP_20140825_001.jpg)



Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 29 augustus 2014, 11:03:05 am
netjes, Geert ! klaar voor massa produktie :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 03 september 2014, 20:43:50 pm
netjes, Geert ! klaar voor massa produktie :)

Bijna klaar voor massa productie ;)

Nieuw ontwerp stroomdetectie met S88 bus, getest en goed bevonden (let niet op de datum, vergeten aan te passen).



(https://lh5.googleusercontent.com/-6iSnUV8w9CM/VAdeH3A_3KI/AAAAAAAAATQ/DEaBAFM4Q1I/w581-h325-no/foto%2B2%2Bstroomdetectie.png)

(https://lh4.googleusercontent.com/-L1E3TZUGpt0/VAdd_BYMRSI/AAAAAAAAATI/FQ5VzwqngxE/w390-h577-no/foto%2B3%2Bstroomdetectie.png)

kostprijs componenten: enkele euro's, in massaproductie nog minder ...

maar ik ben niet iemand die er geld mee wil verdienen.

Binnenkort start ik hier een draadje hierover voor zelfbouwers ...


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Bolje op 03 september 2014, 20:47:51 pm
Geert,
En voor massadedectie?
Anders is er hier wel interesse.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 03 september 2014, 20:53:26 pm
Zie link onder mijn handtekening voor meer info.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Bolje op 03 september 2014, 20:56:03 pm
Had ik niet gezien ::)
Dank u, zal even kijken. ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 14 oktober 2014, 20:22:29 pm
(https://lh6.googleusercontent.com/-5osIXI0OYpk/VD1kLuYAPkI/AAAAAAAAAXk/WELkIdf1q4w/w648-h548-no/print%2B%2Bs88%2Bmet%2B32%2Bingangen%2B2.png)

Lijkt ingewikkeld, maar dit is een S88 terugmelder voor massadetectie met 32 ingangen. Deze is al enkele jaren geleden ontwikkeld op een strokenprintje. (zie link onderaan in mijn handtekening) Ondertussen al wat positieve reacties gehad van mede hobbyisten die de technologie al met succes toegepast hebben. (Vooral uit Nederland maar ook al verder, Italië .... )

Voor mij was het logisch om hieraan een volgende stap toe te voegen. Dit ontwerp op een eenvoudig PCB over te brengen. Liefst enkelzijdig en zo compact mogelijk. Als het kan 4 van zulke schakelingen op een europrint formaat (europrint= 100 op 160mm).

De uitdaging voor mij vandaag was hoe snel kan ik al met het EAGLE PCB ontwerp programma werken. Het is me gelukt om dit op 2 uur klaar te krijgen (Bovenstaande tekening en onderstaand PCB ontwerp). Nu nog ontwikkelen, etsen, solderen en testen.


(https://lh5.googleusercontent.com/-wWMkhXjSzAA/VD7LNttf8cI/AAAAAAAAAaA/4hmRLUkguqU/w734-h426-no/print%2B%2Bs88%2Bmet%2B32%2Bingangen%2Bv2.png)


De software gaat mogelijk ook aangepast worden met een 50Hz en veelvoud ervan filter.

Geert

edit: PCB ontwerp aangepast
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 oktober 2014, 18:44:53 pm
Een 32 ingang massadetectie terugmelder met S88 bus. Kleiner gaat niet  8) ,  of ik moet overschakelen naar SMD...

Geert

(https://lh6.googleusercontent.com/-Y05b7sE-Ym4/VEkvBZv4mgI/AAAAAAAAAa0/btDEM2YXyt0/w424-h549-no/32%2Bmassa%2Bdetectie%2Bterugmelder.jpg)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 23 oktober 2014, 18:49:19 pm
Misschien domme vraag, voor wat kan je dit gebruiken? terug melding van een bezet digitaal spoor?? en met wat is dat compatibel
??
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 23 oktober 2014, 21:06:46 pm
't Stond allemaal in Geert z'n beschrijving:
- massadetector: detecteert aanwezigheid van locs/wagons aan de hand van 'kortgesloten' massa sporen (enkel in 3-rail)
- S88 protocol waarmee de bezette sporen teruggemeld worden aan de centrale
Dus elke centrale die S88 verstaat, kan hiermee overweg.

Indrukwekkend schakelingetje Geert!  Met SMD krijg je het enkel kleiner als je dubbelzijdig gaat werken...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 24 oktober 2014, 09:53:14 am
Mooi dingetje, compact en knap gebouwd  :)

Met SMD krijg je het enkel kleiner als je dubbelzijdig gaat werken...

en zelfs dan ... je connectoren hebben ook hun volume nog ..
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Dreha op 24 oktober 2014, 11:44:22 am
En als je microcontroller het eens begeeft (gebeurd niet zo vaak maar toch). Dan vloek je wel even want zo'n SMD chip terug los solderen is geen makkie  :( 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 oktober 2014, 12:20:19 pm
Klopt, smd los solderen met 40 pinnen, begin er maar is aan....

Maar met gewone componenten was mijn doelstelling de schakeling net op 1/4 van een eurokaartje te krijgen, en dit was me gelukt.  Ik maak mijn printjes zelf, en zo heb ik geen overschot. ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PietB op 24 oktober 2014, 12:45:56 pm
Ziet er erg fraai uit Geert, proficiat.

En als je op smd overstapt kan het inderdaad nog kleiner, maar is dat nodig?
Het moet ook hanteerbaar blijven, en onder de treintafel is in veel gevallen ruimte zat.

SMD weerstand arrays, en een SMD micro controller.
Dan worden je S88 connectoren de grootte bepalende onderdelen.

grt Piet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 24 oktober 2014, 13:10:35 pm
Ik denk dat de schroefklemmen hier de bepalende factor zijn, Piet ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PietB op 24 oktober 2014, 13:24:12 pm
Je hebt gelijk Rian, die heb ik over het hoofd gezien.
Gelukkig zit jij wel op te letten.

grt Piet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 oktober 2014, 14:20:16 pm
Voor de connectors maak ik mij geen zorgen. Deze kunnen nog kleiner en eenvoudig demonteerbaar zelfs. 16 pinnen per connector (2X8)

(https://lh6.googleusercontent.com/-PdHluy7fbE8/VEpBhQyDUVI/AAAAAAAAAbs/tPSMS_L2BPM/w473-h460-no/connector%2B16pin.png)

Ik had er een doos vol van (100den). Ooit op dit forum is een oproep gedaan wie deze gratis wilde hebben. Er waren maar een paar reacties, waaronder Jean (steamN), Gerolf en enkele andere. (vreemd hé  ???) Deze hou ik voorlopig voor mezelf en een 10 tal voor Rian (ooit beloofd dat hij wat extra elektronica materiaal mocht hebben, maar spijtig genoeg op de beurs op een verschillende dag gekomen)

Geert

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 24 oktober 2014, 21:18:43 pm
Geert,

mooi gedaan voor een enkelzijdige PCB.

Twee kleine dingen vallen me op.

1) Lijkt erop dat je geen pull-up hebt aan de ingang van het "soft" schuifregister (tenzij je weak pullups gebruikt in de microcontroller. Zwevende ingangen kan je beter vermijden.
2) Zoals de S88 busconnectoren nu gemonteerd zijn kan je geen 1-op-1 kabel gebruiken tussen je modules. Volgens mij kan je beter één van beide 180° om monteren waardor je 1-op-1 kabels kan gebruiken (al hoeft dit geen probleem te zijn). In het schema is het overigens wel 1-op-1
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 oktober 2014, 21:40:31 pm
Amaai Patrick, goed opgemerkt i.v.m die s88 busconnector. Eigenlijk zijn de connecors op de foto nog niet gesoldeerd. Ik ga daar schroefconnectors voor gebruiken... Geen pinnen.


Die pull up is wel aanwezig 10k per ingang, weliswaar in zwarte uitvoering en valt niet zo op.


geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 oktober 2014, 22:06:48 pm
Ik denk dat Piet de overige weerstanden bedoelde, deze die niet gemeenschappelijk aan een pull up hangen.  Er bestaan arrays waarbij beide pinnetjes van de weerstanden vrij zijn, zijn wel moeilijker te vinden.

Die s88, tja, ik heb er zelf eentje ontworpen; maar dan zonder microcontroller met latches en shift registers.  Mijn print kwam wel groter uit dan de jouwe en met maar 16 ingangen.  Maar ja, 'k weet perfect hoe die s88 werkt.

De aansluitklemmen voor de detectielijnen zou ik NIET veranderen.  Het werkt makkelijker met die schroefklemmetjes, been there, done that.  Ik heb ook eens die flat cable connectoren gebruikt en ben heel rap terug naar de mooie grote schroefblokjes gegaan, deze zijn veel handiger.

Er valt mij nu wel een dingetje op... waarom 2 IC sockets boven mekaar?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 oktober 2014, 22:18:35 pm

Er valt mij nu wel een dingetje op... waarom 2 IC sockets boven mekaar?

Ha gevonden, ik was deze kwijt....

Nee gewoon handig om te testen. Ik breek liever een pinnetje op een ic voet dan eentje van een 40 pin ic microcontroller die evenveel kost dan een Duvel in de sporthal van Nijlen  ;)


Waarmee ik nog eens duidelijk maak, deze dingen kosten gewoon niets... ( edit : de microcontrollers kosten zo goed als niets, ne Duvel aan 3 € is wat te veel...)


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 24 oktober 2014, 22:39:05 pm
Nee gewoon handig om te testen. Ik breek liever een pinnetje op een ic voet dan eentje van een 40 pin ic microcontroller die evenveel kost dan een Duvel in de sporthal van Nijlen  ;)
Ha, da's een probleem dat ik niet heb met m'n SMD versies ;D; eens vast, voor altijd vast.  Maar ik moet wel telkens de programmeer stekker mee voorzien op m'n prints. 

Maar goe gevonden van die 2 sockets, ik doe nu al meer dan 20 jaar in elektronica en had dit nog niet gezien.  Ik zal precies ne keer naar Nijlen moeten komen als den Duvel daar zo goedkoop is...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 25 oktober 2014, 08:26:25 am
Maar goe gevonden van die 2 sockets, ik doe nu al meer dan 20 jaar in elektronica en had dit nog niet gezien.  Ik zal precies ne keer naar Nijlen moeten komen als den Duvel daar zo goedkoop is...
Zeker als je met tulip-sockets werkt kan dit zeer nuttig zijn, deed dat vroeger ook steeds. De pinnekes van de ic's durven daar nog al eens goed in vast zitten, wat natuurlijk ook wel de bedoeling is.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 26 oktober 2014, 10:26:22 am

Die pull up is wel aanwezig 10k per ingang, weliswaar in zwarte uitvoering en valt niet zo op.

geert
Dag Geert,

ik heb me niet zo goed uitgedrukt. Ik bedoelde een pull up op het seriële ingangssignaal dat komt van de vorige S88 terugmelder.
Als er geen voorganger aangesloten is dan is dit signaal zwevend.

mvg,

Patrick
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 26 oktober 2014, 11:22:49 am
Ok, ik kan nu volgen. oorspronkelijk was dit voorzien een R van 10k naar +5V. In principe enkel nodig op de laaste S88 terugmelder. (De S88 data out afkomstig van vorige µC heeft een harde +5V en een harde massa, ik weet niet of deze term nog gebruikt wordt?)

http://forum.modelspoormagazine.be/index.php/topic,14127.msg169317.html#msg169317 (http://forum.modelspoormagazine.be/index.php/topic,14127.msg169317.html#msg169317)

Hiermee creëer je wel een bezetsignaal voor de overige niet aanwezige S88 terugmelders.

Wat ik nu doe, als de terugmelder de laatste is van de reeks, is een brugje leggen tussen pin 1 (DATA IN) en pin 2 (MASSA). Hiermee lees je geen bezetmelding in.  (zie foto)

http://forum.modelspoormagazine.be/index.php/topic,14127.msg269187.html#msg269187 (http://forum.modelspoormagazine.be/index.php/topic,14127.msg269187.html#msg269187)

En er is natuurlijk ook de mogelijkheid om in de software aan te geven hoeveel S88 terugmelders er zijn.


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 28 oktober 2014, 19:37:24 pm
vandaag een dagje thuis, en dan maar de lichtcontroller voor de zolderkamer eens herwerkt.
Ik had ondervonden dat je met een darlington array'tje in een IC geen 8 mini relais kan aansturen.
En ik had nog een oude  Kemo B210 kit op zolder liggen (die je normaal gebruikt om dingen aan te sturen vanaf de printerpoort van een pc)

Dus even de ombouw gedaan en nu werkt alles naar behoren.

Nu nog alles netjes monteren en kastje dicht doen, dan kan ik gaan plaatsen op zolder en aansluiten.  Eindelijk controle over de lichten !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 28 oktober 2014, 19:49:40 pm
Effe met een Cortex M4 (STM32F407) breakout aan 't experimenteren.  32 bit power op een credit card...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 30 oktober 2014, 20:35:59 pm
FILMPJE (https://www.youtube.com/watch?v=hZXO_hDFSrM&feature=youtu.be) gemaakt van mijn MSM aanwinst op de testbaan om stroomdetectie uit te testen. Dit met µC technologie en S88 bus. De lok werkt perfect, de stroomdetectie ook  :P . Op het filmpje zie je links de stroom detectie print en rechts een S88 simulator. (handig om te testen) De LED-jes op de detectie print zijn optioneel. De twee gele LED's geven aan dat er een digitaal signaal aanwezig is op de rails, en dat de S88 bus signalen perfect werken. De groene geeft aan dat er een stroomdetectie geregistreerd wordt, de rode dat er eentje weg gaat.

De testen zijn wel uitgevoerd op 3 rail sporen, het is de middengeleider waarop de stroom wordt gemeten. (handig bij C rails en M rails, hierbij hoef je de rails niet te beschadigen...) Maar deze schakeling werkt ook bij twee rail.

De gebruikte µC kost net geen 2€ (Conrad), samen met wat dioden, weerstanden en connectors is dit een goedkoop alternatief voor de commerciële stroom detectie terugmelders.



Door de gebruikte software worden ook de spookmeldingen eruit gefilterd (niet deze op de S88 bus).

Allé, nu volgen de echte testen, serieuze stoorsignalen opwekken, zoals een slecht werkende boormachine erboven houden enz ...


meer later  ;)



Geert

 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 15 november 2014, 16:43:48 pm
Vandaag veel testen uitgevoerd op terugmelders met stroomdetectie. (zie ook vorig bericht). Met deze terugmelders heb ik een praktische toepassing ontdekt. Door de zeer snelle analoge metingen door de µC op het stroomverbruik vanuit de sporen kan ik er uit afleiden waar er veel vuil (slechte contacten) zijn. Nu nog verder uitwerken of dit nuttig is...


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2014, 21:30:09 pm
...Door de zeer snelle analoge metingen door de µC op het stroomverbruik vanuit de sporen kan ik er uit afleiden waar er veel vuil (slechte contacten) zijn. Nu nog verder uitwerken of dit nuttig is...

Geert, dan moet je wel in iedere terugmelder/bezetmelder onder dezelfde omstandigheden gaan werken: dezelfde loc met dezelfde snelheid over gans je baan gaan meten.  Ook rekening houden met een referentie naar je voedingsspanning.

Hoe ga je praktisch je meetgegevens verzamelen/communiceren naar een visuele weergave?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: minitreintje op 15 november 2014, 21:36:27 pm
Of misschien is dit handig als je aangeeft waar de rails vuil zijn en als je met een PC rijdt deze de schoonmaaktrein langs die rails stuurt.

Zo wordt er nuttig gepoetst :p

groeten Dylan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 15 november 2014, 22:25:40 pm
Assembler leren voor schoolopdracht... niet zo simpel met de gebrekkige uitleg in de les.
Opdracht 1: programmeer voor PIC 18f4550 in ASM een looplichtje waarvan de richting te wijzigen is met een drukknop. Ook de snelheid moet te wijzigen zijn met een drukknop (bv 1x en 5x snelheid). Géén idee hoe ik daar aan begin.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2014, 22:30:17 pm
Géén idee hoe ik daar aan begin.

Rian, wie niet sterk is, moet slim zijn: een PM aan Geert?  Eens kijken of er een trein in zijn buurt stopt  ;)
 :)


GEERT!  :)


[EDIT] maak een flowchart van je probleem.  Omschrijf je stappen in een pseudo-programmeertaal en kijk dan wat die 35 ASM instructies (dacht ik?) je te bieden hebben.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2014, 23:01:10 pm
Rian, leesvoer:

http://www.gooligum.com.au/tutorials/baseline/PIC_Base_A_1.pdf
http://www.mikroe.com/chapters/view/10/chapter-9-instruction-set/
https://moodle.sapidoc.ms.sapientia.ro/pluginfile.php/3009/mod_resource/content/1/PIC_Part3_AssemblyLanguage.pdf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 15 november 2014, 23:36:27 pm
Bedankt om ook te zoeken! Zal die zeker eens bestuderen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 16 november 2014, 19:39:28 pm
Denk eerst eens hoe je dat in een hogere programmeertaal zou doen met functies en procedures. Schrijf dan de boel in assembler. Het is niet omdat ze 40 jaar geleden spagetticode schreven in assembler dat je dat nu nog moet doen. (en het is niet omdat ze dat nu op mijn werk nog doen dat jij dat moet doen....)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 16 november 2014, 19:52:37 pm
Tjah. Ik ken persoonlijk héél goed iemand die meegewerkt heeft aan oa de Railtime applicatie. Tijdens de ontwikkeling hebben ze, als test de routine die het meest aangeroepen wordt in ASM herschreven: géén tijdswinst, integendeel... Wat heeft het dan nog zin om met die moeilijk te begrijpen codes te werken?

In C was dat allicht gereed, maar ik vrees dat ik daar 0 voor zou krijgen. Er staat duidelijk in de opdracht dat het in ASM moet zijn. Maar ben al wat opgeschoten. Doe nog wat verder...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 16 november 2014, 20:03:57 pm
Wel als je het in C kan doen zou het in assembler ook moeten gaan. De ontleding en opdeling is hetzelfde. Enkel de implementatie is verschillend.

Eigenlijk is het idioot dat ze je eerst C gegeven hebben en dan assembler. Als je eerst de assembler ziet dan snap je wat de pointers van C betekenen.

En inderdaad, moderne compilers zijn behoorlijk efficient. Daar ga je niet veel aan kunnen verbeteren.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 16 november 2014, 20:06:09 pm
Toch eerst ASM gezien en dan C, maar van C en enkele andere High level talen heb ik al zelf wat bestudeerd...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 17 november 2014, 13:01:45 pm
Denk eerst eens hoe je dat in een hogere programmeertaal zou doen met functies en procedures. Schrijf dan de boel in assembler. Het is niet omdat ze 40 jaar geleden spagetticode schreven in assembler dat je dat nu nog moet doen. (en het is niet omdat ze dat nu op mijn werk nog doen dat jij dat moet doen....)
Pffft, is hier niet anders zenne. Heb er hier ook zo'n paar die er een sport van maken om hun code onleesbaar te maken.   Vliegen er meteen mee terug om te herbeginnen; en dan blijkt dat het ineens wel kan om 'proper' te programmeren.  Nu nog ervoor zorgen dat hun specificaties en testplannen in orde zijn, maar da's al veel gevraagd :o.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 november 2014, 20:48:26 pm
En Rian, lukt het met je ASM code voor je looplicht. Als je wil help ik wel, ik kan de code zelfs testen, ik heb het type PIC thuis ergens liggen.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 17 november 2014, 20:52:28 pm
Ben al redelijk opgeschoten, nog niet hélémaal... Morgen afgesproken met de docent voor wat extra uitleg ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 26 november 2014, 00:01:37 am
Dit is ook een microcontroller zeker? "Achterstallig" schoolwerk inhalen. Bouw zelf je "microcontroller" met EEPROM.
(http://www.treinbaanrian.be/elektronica/%C2%B5c%20met%20eeprom.jpg)
Was een oefening van begin dit jaar. Had printje getekend en ingediend op school, om te laten fabriceren, maar was compleet fout. Heb echt geen vertrouwen meer in de "schoolservice". Vorig jaar ook bij projectwerk de nodige problemen gehad met slecht geëtste printen. Nu zelf printjes laten maken. (heb nog tijd tot 19/12 om dit te demonstreren).

Is een wel zéér primitieve µC met maar 16 Bytes aan instructies en wordt in bytecode in de EEPROM opgeslaan. (programma opstellen zonder compiler rechtstreeks in bytes, valt nog vrij goed mee met dit systeem).
Rechts zit een herlaadbare teller (aan de onderkant, kwestie van geen 100 via's te hebben) .


Die teller kan al dan niet herladen worden ifv de uitgang van de multiplexer voor de ingangen (2 drukknoppen + 5v + 0v). Als de uitgang 0 is dan wordt die herladen met 4 bits uit de instructie byte in de EEPROM.


De teller bepaalt eveneens welke instructie er wordt "geladen", en is zo terug gekoppeld aan de EEPROM. De 4 andere bits besturen de multiplexer (2)  en de demultiplexer (2). bovenaan zitten nog 2 555 timers die voor de klok en andere timing zorgen...


Opgave 1: het watervat: het waterniveau moet geregeld worden in een watervat. Als het vat leeg is moet het zich vullen tot aan een hoog niveau. Begint het water terug te zakken dan mag deze terug pas bijgevuld worden met de pomp als deze onder het lage niveau is. (soort hysterisis), en 2de is een soort verkeerssituatie waarbij een brug opgehaald wordt, maar de byte's voor die programma's staan al ergens op papier. Hoop dat ze werken...


ps: erg efficiënt gebruik van chips is dit: de EEPROM is 8K waarvan er hooguit 16 kunnen gebruikt worden ;D





Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 26 november 2014, 20:55:28 pm
Rare schakeling... een microcontroller, met externe 555 als timers/clock, lol...
Kan wel een interessant oefeningske zijn: 'hoe programmeren zonder te smossen met geheugen'.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 26 november 2014, 21:01:50 pm
Ondertussen zelf bezig met een schakeling die geluid kan puren uit een µC.  Enkel een passieve high-pass filter en één of twee kleine 8ohm luidsprekers nodig (levert 100mW aan geluid op).
Het geluid zelf komt van een een ongecomprimeerd wav bestand en wordt door de µC via 2 PWMs (1 voor wav sample rate, en 1 voor analoge conversie).  Korte sounds kan je makkelijk in de ROM van de µC kwijt; langere gewoon via SD-kaartje dat je op de SPI van de µC aansluit.

Kan heel handig zijn om lokaal in je scenery wat sound in te planten, en als je meer power wil: achter de high-pass nog een low-pass om de HF PWM eraf te krijgen en dan door een klassieke versterker jagen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 04 december 2014, 17:34:23 pm
Een beetje aan het 'spelen' met Loconet:

1° projectje - alle Loconet data die op de bus passeert 'sniffen' en seriëel doorsturen naar de PC
Een interruptgestuurde decoder (flank- en tijd getriggerd) stelt de bytes samen en geeft die door aan een controle routine (om te kijken of de checksum klopt).  Alle data wordt seriëel doorgestuurd en bij een foutieve checksum wordt dat aangeduid.  Bij juiste data gaat die door naar een interpreter. 

2° projectje - status van de centrale weergeven met een rode en groene led
De interpreter interpreteert de Loconet opcodes OPC_GPON (GLOBAL power ON) en OPC_GPOFF (GLOBAL power OFF).

3° projectje - met een druktoets de centrale beïnvloeden en spanning aan- of afzetten (noodstop).
De interruptroutine uitgebreid zodat er ook data kan worden verzonden.

4° projectje - de lichtsterkte van de rode en groene led regelen aan de hand van de ingestelde snelheid van een bepaalde lok
Informatie opvragen in welk Loconet-slot die bepaalde lok zit en nadien de snelheidswijzigingen opvolgen en omzetten naar PWM om de lichtsterkte te regelen.

Alle projectjes werken zoals ze moeten werken.

De processor is ruim bemeten (PIC 18F2550 - 5,62 Euro) en draait op 48MHz zodat ik heel wat processortijd ter beschikking heb.

Nu de code opkuisen en in leesbare vorm gieten.

Volgend projectje: poging tot een synoptisch bord via Loconet gestuurd (wissel- en seinstanden beïnvloeden met een drukknopje en status van de terugmelders aanduiden)...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 04 december 2014, 17:53:51 pm
Droomprojectjes Peter  :P succes ermee.

ben nu bezig al mijn S88 µC projectjes te beschrijven op deze webpagina (http://users.telenet.be/RedDeBist/MBAAN/S88%20terugmelder.htm) maar er is nog veel werk aan het schrijven van teksten, tekeningen enz...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 04 december 2014, 18:48:13 pm
Droomprojectjes Peter  :P succes ermee.

Bedankt!  Heel wat studiewerk om Loconet Personal Edition (http://www.digitrax.com/static/apps/cms/media/documents/loconet/loconetpersonaledition.pdf) met het vergrootglas (tot in de kleinste detail) te bestuderen.  Maar geduld (en wat gezond boereverstand) loont.


...er is nog veel werk aan het schrijven van teksten, tekeningen enz...

Daar kruipt dus heel veel werk in.  Vroeger hield ik van niets aantekeningen bij.  Een projectje enkele maanden 'opzij' en dan verder aan werken, was geen probleem.  Waar ik mee gestopt was, deed ik mee verder.  Tegenwoordig durf ik al één en ander 'vergeten' en hou ik kaftjes met drafts en een digitaal mapje bij.  Spaart veel werk uit om nadien alles deftig op 'papier' te krijgen.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 04 december 2014, 22:18:51 pm
Dat is wat je noemt 'Heel Goe Bezig' Peter!!!!!
 ;) ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 december 2014, 19:14:14 pm
Nog een beetje verder zitten 'spelen' met de Loconet decoder en plots kwam de vraag: hoe zit dat met de bandbreedte van dat netwerk?  Is het inderdaad 'een retourtje naar het stenen tijdperk (http://forum.modelspoormagazine.be/index.php/topic,20276.msg281065.html#msg281065)'?  Zoekingen op het net leveren geen resultaten op.  Blijkbaar is iedereen daar gerust in dat het netwerk voldoende bandbreedte heeft... 

...Ik helaas niet...

...Meten is weten!

Testobject: mijn eigen testbaantje met zes locomotieven aktief, een twintigtal wissels, een tiental seinen en tig terugmelders (veel te veel en ze worden allen uitgelezen).
Meting: via onderstaande Loconet interface en een geheugenscoop (Fluke 123 (https://www.google.be/search?hl=nl&site=imghp&tbm=isch&source=hp&biw=1920&bih=930&q=fluke+123&oq=fluke+123&gs_l=img.3..0l2j0i24l8.1641.3836.0.4517.9.8.0.1.1.0.62.463.8.8.0.msedr...0...1ac.1.58.img..0.9.461.Sy_x8-Vph9Y))

(http://i.stack.imgur.com/z7wbP.png)
Afbeelding geleend bij http://electronics.stackexchange.com



Het Loconet signaal is idle wanneer het signaal hoog is.  Het zijn die 'idle' momenten die me interesseren en hoe meer er zijn, hoe meer 'eigen' communicatie ik tijdens die 'idle' momenten kan opzetten.

Meetresultaten:

1. Centrale is opgestart en Loconet is idle.  Na een 12 tal seconden begint de treinbesturingssoftware de treinen automatisch te laten rijden (het ganse scoopbeeld geeft 50 seconden weer - 5s/verdeling):

(http://www.pctoytoy.be/2014/20141207_1.jpg)

2. Een beetje meer in detail gaan kijken (5 seconden meting - 500ms/verdeling) en we zien duidelijk dat er ruim voldoende 'idle-time' is:

(http://www.pctoytoy.be/2014/20141207_2.jpg)

Telkens wanneer op de afbeelding het signaal 'laag' gaat, is dat een ganse Loconet pulstrein die passeert (16KHz signalen zijn op die resolutie niet meer te zien en worden samengevat getoond in slechts één enkele negatieve puls).

Overtuigd door de meetresultaten kan ik nu verder 'spelen'...



Ondertussen heb ik ook al ontdekt dat ik, om de lichtsterkte van de leds te kunnen regelen, geen van de 'beperkte' MM adressen hoef te gebruiken.  Loconet kan ook de ganse reeks 'grote' adressen aan (en zelfs mijn oude IB ook) zodat ik nu de lichtsterkte regel via (default) adres 1111 (DCC - 28 stappen).  Met een klik op de programmeerknop is dat adres in een mum van tijd aan te passen.


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 20 december 2014, 19:18:25 pm
Mijn versie van een LocoNet start/stop schakeling werkt.  De schakeling op gaatjesprint opgebouwd.  Morgen (als de tijd het toelaat - ik moet nog werken) het knopje vervangen door een kleine panic-button en beide leds vervangen door een RGB versie (smd 5050) zodat de print onder de baan kan worden gemonteerd en met de leds en panic-button duidelijk in het zicht.

(http://www.pctoytoy.be/2014/20141220_1.jpg)

Voeding komt uit het LocoNet signaal.  Na het opstarten van de processor knipperen de rode en groene leds eventjes en daarna wordt de status van de centrale weergegeven.  De eigenlijke LocoNet interface zelf heb ik kunnen vereenvoudigen tot 4 weerstanden en een simpele NPN.

Het werkt en ikke blij   :)



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 december 2014, 19:32:01 pm
Geen interne klok gebruikt zie ik. 

Dit is wel een zeer eenvoudige interface.

Ik krijg ook al zin om het loconet verder uit te pluizen  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 20 december 2014, 19:36:40 pm
Geen interne klok gebruikt zie ik. 

Met een 20MHz kristalleke kan ik de interne klok (via PLL) opdrijven tot 48MHz  en....heb.....ik.....heel.....wat.....tijd....om....mijn......programmaatje.....uit....te.....voeren....  ;)

Ik krijg ook al zin om het loconet verder uit te pluizen  ;)

Doen!

Mijn opgedane kennis (en veel tijd) wil ik gerust delen!

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 20 december 2014, 20:03:19 pm
Leuk om je kennis te delen.

Kan handig zijn om mijn S88 naar S88N adapter ooit te vervangen met een Locobus adapter.

(https://lh4.googleusercontent.com/-9of56bpt6ao/VJXFa-o6p7I/AAAAAAAAAgo/o31Zu9c4KK4/w648-h389-no/S88N%2B2.png)

(https://lh6.googleusercontent.com/-9HCW73Sx-CU/VJXFbA1b5zI/AAAAAAAAAgs/eIeqQ-W3Bjw/w648-h389-no/S88N%2B1.png)


Dezelfde adapter kan gewoon in twee gezaagd worden

(https://lh4.googleusercontent.com/-NfzKfraPCuI/VJXFbiEjJ9I/AAAAAAAAAgw/2I6xfVe_i3g/w648-h389-no/S88N%2B3.png)

(https://lh5.googleusercontent.com/-sOlSTr99T88/VJXFa5FkH7I/AAAAAAAAAg0/GXop1A9e46g/w603-h354-no/S88N%2B0.png)
Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 20 december 2014, 20:33:03 pm
...Kan handig zijn om mijn S88 naar S88N adapter ooit te vervangen met een Locobus adapter...

Een simpele en goedkope (http://rosoft.biedmeer.nl/Webwinkel-Product-1099364/S88LN.html) oplossing is ook te koop  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 21 december 2014, 23:48:32 pm
Eindelijk nog eens, tussen de examens door beetje kunnen programmeren... was (op schoolwerk na) een hele tijd geleden... Heb met het vak Embedded Systems nu dit semester al heel wat bijgeleerd...


Zo'n jaar geleden heb ik, met de nodige hulp van Peter een LCD terminal in elkaar gestoken. (via een protocol kon je bytes naar het ding sturen, en die werden dan op het lcd weergegeven, of je kon ook commando's doorsturen voor de cursor te verplaatsen enzo)
(zie http://www.treinbaanrian.be/html/16f887_6_Serial_tekst_commando.htm (http://www.treinbaanrian.be/html/16f887_6_Serial_tekst_commando.htm))
(http://www.treinbaanrian.be/images/eindwerk/lcd2.jpg)
(nog met de LCD uit WOI, ligt hier ergens nog in het schof)

Tijd voor V2.0 : dit keer met een CNC gefreesd printje (ontwerpje is bijna klaar in EAGLE), en in een doosje (dat is toch de bedoeling),  uitbreiding met rotary encoder aan RB0 (interrupt) en RA4 (eventueel pulsen tellen met timer0), lcd achtergrondverlichting met pwm... Het aantal knopjes is wel maar 4 geworden (plus de rotary encoder, plus de knop in die encoder)...

Nog een zwak punt dat ik moet zien op te lossen: de 4 aderige kabel (RX, TX, 5V & GND) was gewoon gesoldeerd op dat stukje gaatjesprint, maar die aders breken soms af... Degelijke connector nodig, maar weet nog niet goed welke.


µC: ben begonnen met 16f628a omdat ik er nog enkele heb liggen, hoop dat die voldoet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 december 2014, 00:07:38 am
Succes ermee, Rian  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 11:03:24 am
...(nog met de LCD uit WOI, ligt hier ergens nog in het schof)...
Stevig spul hé en met al die herdenkingen stevig wat geld waard voor souvenierjagers  ;D ;D ;D

Succes!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 december 2014, 11:22:29 am
Voor 100€ mag je die terug hebben, Peter ;D 


Bedankt Gerolf!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 12:06:30 pm
'****************************************************************
'*  Name    : kleine epw micro.BAS                              *
'*  Author  : [raf janssens]                                    *
'*                                                              *
'*  Date    : 22-12-2014                                         *
'*  Version : 1.4                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 12F629               ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
     
       CP_ON                 ; Code Protection aan

All_Digital TRUE             ; Alle poorten digitaal
 
Symbol sw1  = GPIO.2      ; ingang van vorige pic
Symbol sw2  = GPIO.3       ; detect inloop spoor
Symbol sw3 =   GPIO.4          ;detect stop spoor
Symbol poort2 = GPIO.0       ;uitgang naar volgende pic
Symbol poort1 = GPIO.1        ;uitgang pwm
 
Dim waarde  As Word          ; Variabele waarde pwm
Dim test As Byte
Clear                        ; Wis alle ram geheugen
 GPIO.1 = 0                  ;pwmlaag maken (invers pwm)
DelayMS 500                  ; Stabilisering 0.5_sec
 
             
 
         ;543210            ; Hulpregel Poort 
  GPIO = %000000            ; Zet poortgpio laag
TRISIO = %111100          ; Poort gpio 2345 als ingang
 test = 0
start:                       ; Begin start
If sw1   = 1 And test = 0 Then GoTo stoppen        ;als voorliggend is rood dan stoppen
If sw1 = 0 And test = 1 Then GoTo rijden           ;als voorliggend is groen dan door rijden
   
GoTo start
 
 stoppen:
         
     test =1                      ;test om niet altijd naar hier te springen
     
     For waarde = 0 To 255
        DelayMS 5
        While sw3 = 1 :Wend
        If waarde > 250 Then waarde = 255

        PWM GPIO.1, waarde, 1      ;Stuur 1 puls met pulsbreedte 'waarde', naar PORTA.1
   
    Next
        PWM GPIO.1,255 ,1
                       ;trein op het inloopspoor poort uitgang hoog maken
        While sw2 = 1 And sw3 = 1 :Wend
        poort2 = 1                 ;trein op het inloopspoor poort uitgang hoog maken
        While sw3 = 1 :Wend     ;    zolang er geen trein is op het inloopspoor poort uit laag houden
       
     GoTo start
rijden:

     test = 0                   ; test om niet altijd naar hier te springen
     For waarde = 255 To 0    Step - 2
       DelayMS  20
       If waarde < 5 Then waarde = 0
       PWM GPIO.1, waarde, 1 
     Next 
    PWM GPIO.1,0 ,1
                 
         While sw2 = 0 :Wend
         While sw3 = 0 :Wend   ;zolang stop en inloop bezet is uitgang hoog houden
         
       poort2 = 0                       ;stop en inloop leeg dan poort uitgang laag maken
    GoTo start
ik zit in de knoei en geraak er niet uit
toggle ik poort 2 dan werkt alles perfect maar toggle is riskant om te gebruiken omdat deze alleen maar de status van de poort omkeert ongeacht wat de status is
ik gebruikt liever poort2 =0 of poort2 = 1
dit is belangrijk daar dit de bezet melding is naar het achterliggende signaal
loopt dit fout dan gebeuren der ongelukken
iemand een idee wat ik verkeerd doen

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 december 2014, 12:19:08 pm
Amai welke taal is dat?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 12:20:17 pm
Raf, waar de fout zit is moeilijk te achterhalen omdat je programma niet gestructureerd is (van 'Goto's' krimpt mijn maag ineen)...

Gooi die 'goto's' weg en steek structuur in je programma en het zal voor iedereen veel duidelijker worden (ook voor jou om de fout te vinden).

vb (ik weet niet of de basic syntax juist is, maar het gaat hem om de structuur):
while(1)  ;main-loop
  if(situatie1)then
     gosub situatie1
  else
     if(situatie2)then
        gosub situatie2
     end if
  end if
end while

sub situatie1
   ...
end sub

sub situatie2
   ...
end sub

 ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 december 2014, 12:23:36 pm
Tjah, dat wou ik juist ook vermelden...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 12:47:22 pm
hoe zo niet gestructureerd???
een deel is kijken of er een loco in het voorliggende blok zit

das tussen start en goto start

dan het blok stoppen wat heel de zaak afhandelt wat het stoppen aan gaat als het vorige blok bezet is
nadat dit is afgelopen gaat het programma terug naar start om te kijken of het voorliggende blok leeg is


is dit leeg dan gaat het naar rijden waar de loco terug optrekt en het achterliggende blok vrij geeft als alle wagons uit de twee blokken zijn.

veel meer structuur kun je in zo een programma niet duwen hé
hier speelt tijd geen rol want de langzame factor is het trein stel welk de blokken moet verlaten en hoe langer de trein hoe langer het duurt
dus snelheid speelt geen rol

while wend of until is in deze situatie niet echt het probleem
er zitten maar 5 goto's in verwerkt en ik zie niet hoe je dit meer kunt stroomlijnen
sorry maar mijn basic is van een 40 jaar gelden en dan waren de andere syntaxen nog niet bruikbaar of aanwezig in de basic interpreter


gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 12:58:04 pm
Raf, het is niet kwaad bedoeld hé...  :-X

5 "Goto's" zijn er nog steeds 5 teveel...  Alleen in Assembler worden die getolereerd (omdat je daar vaak niet anders kan) maar het gebruik van "Goto's" stimuleert 'spagetticode' (http://nl.wikipedia.org/wiki/Spaghetticode).

Om die reden heb ik +30 jaar geleden vaarwel gezegd tegen Basic (en pas de laatste jaren - omdat ik op mijn werk niet anders kon - terug de draad daarvan opgepikt in VBA - maar wel zonder 'Goto's"  ;) ).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 13:02:39 pm
Citaat
In de jaren 70 kwam men tot het inzicht dat de spronginstructie een slechte invloed had op de leesbaarheid van het programma, waardoor het programma lastig te onderhouden was. Bovendien bleek dat de instructie overbodig was: elk probleem kon ook worden opgelost zonder GOTO te gebruiken. In plaats daarvan gebruikte men de iteratie met statements als FOR, DO EN WHILE. De oplossingen werden steeds meer gevonden in het gestructureerd programmeren. Iteraties en keuzestructuren met bijbehorende statements verdreven GOTO uit de gestructureerde programma's. In programmeercursussen werd GOTO niet onderwezen (hoewel de gebruikte taal het statement nog wel kende) en in de meeste nieuwe programmeertalen is het statement GOTO zelfs niet meer beschikbaar.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 13:06:32 pm
ik heb de proton compiler aan gekocht (200 euro)dus dat is het programma waar ik mee werk omdat ik met de kennis van basic met dat programma voldoende overweg kon om iets bruikbaars te maken
het programma is NIET het probleem want als ik het omzet naar de 16F628 dan werkt het programma perfect
met de 5 goto's werkt het dus wel maar als ik het omzet naar de 12F629 dan werkt het opeens niet meer
ik wil de 12F gebruiken omdat die minder pootjes heeft en ik zodoende kleiner en eenvoudigere printjes kan maken
ik heb er een stuk of 50 nodig om in de twee schaduw stations te gaan werken
ik kan natuurlijk alles in een grote picro ship proppen maar dan ??? is het haast onmogelijk om nog fouten op te sporen en dan word gij gek en moet ik je komen bezoeken in bilzen of geel en daar heb ik geen tijd voor dus je gaat daar zitten te verkommeren LOL

het kan zijn dat het een software probleem is in het simulatie programma (real pic simulator ook aan gekocht)maar als ik het dan in de 50 pic's programmeer en het is echt een fout zit ik met een groter probleem

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 13:10:11 pm
tja peter ik ben nog met een Z80 begonnen in machine taal (niet de zx81 Hé )die is daarna gekomen
en echt daar was in die tijd de goto instructie in basic nog zeker wel in gebruik
goto en gosub werd daar volop gebruikt in de cursussen
while wend werd ook gebruikt maar dat was het dan wel zowat
want until en end if was toen nog geen instructie die je kon gebruiken
eens kijken of ik het programma kan aanpassen zonder de goto's
dus ik kom der op terug

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 13:12:02 pm
...maar als ik het dan in de 50 pic's programmeer en het is echt een fout zit ik met een groter probleem...

Vandaar dat ik zo benadruk om te structureren!  Zo voorkom je op voorhand problemen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 december 2014, 13:17:00 pm
eens kijken of ik het programma kan aanpassen zonder de goto's
dus ik kom der op terug

Doen!  En je gaat versteld staan hoe duidelijk het dan wordt  8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 december 2014, 13:22:59 pm
Inderdaad, Peter... Ik zie daar ergens iets wat volgens mij een for-loop moet voorstellen, maar zie eigenlijk niet waar die gedaan is...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 13:27:52 pm
zo her geprogrammeerd en hopelijk nu beter
er zit maar 1 goto in en dat weet ik dus niet op te lossen

'****************************************************************
'*  Name    : kleine epw micro.BAS                              *
'*  Author  : [raf janssens]                                    *
'*                                                              *
'*  Date    : 22-12-2014                                         *
'*  Version : 1.4                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 12F629               ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
     
       CP_ON                 ; Code Protection aan

All_Digital TRUE             ; Alle poorten digitaal
 
Symbol sw1  = GPIO.2      ; ingang van vorige pic
Symbol sw2  = GPIO.3       ; detect inloop spoor
Symbol sw3 =   GPIO.4          ;detect stop spoor
Symbol poort2 = GPIO.0       ;uitgang naar volgende pic
Symbol poort1 = GPIO.1        ;uitgang pwm
 
Dim waarde  As Word          ; Variabele waarde pwm
Dim test As Byte
Clear                        ; Wis alle ram geheugen
 GPIO.1 = 0                  ;pwmlaag maken (invers pwm)
DelayMS 500                  ; Stabilisering 0.5_sec
 
             
 
         ;543210            ; Hulpregel Poort poort_A
  GPIO = %000000            ; Zet poort_A laag
TRISIO = %111100          ; Poort_A als ingang
 test = 0
 
 start:
 While sw1 = 1 :Wend;als voorliggende vrij is doe dan niks
  For waarde = 0 To 255
        DelayMS 5
        While sw3 = 1 :Wend
        If waarde > 250 Then waarde = 255

        PWM GPIO.1, waarde, 1      ;Stuur 5 pulsen met pulsbreedte 'Duty', naar PORTA.1
   
    Next
        PWM GPIO.1,255 ,1   ;trein op het inloopspoor poort uitgang hoog maken
        While sw2 = 1 And sw3 = 1 :Wend
        poort2 = 1                 ;trein op het inloopspoor poort uitgang hoog maken
        While sw3 = 1 :Wend     ;    zolang er geen trein is op het inloopspoor poort uit laag houden
  While sw1 = 0  :Wend     ;als voorliggende vrij is ga dan rijden
   For waarde = 255 To 0    Step - 2
       DelayMS  20
       If waarde < 5 Then waarde = 0
       PWM GPIO.1, waarde, 1 
     Next 
    PWM GPIO.1,0 ,1
                 
         While sw2 = 0 :Wend
         While sw3 = 0 :Wend   ;zolang stop en inloop bezet is uitgang hoog houden
         
       poort2 = 0                       ;stop en inloop leeg dan poort uitgang laag maken
      GoTo start

nu werkt het programma wel dus ?????
er is principieel niets veranderd buiten dat ik de goto heb weg gelaten en de vertrek detectie heb opgeschoven tussen de twee programma delen in (zie bold text)
als er iemand weet hoe ik die laatste goto weg kan halen dan hoor ik het graag

gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 22 december 2014, 13:40:37 pm
ik kan in de verste verte niet op tegen de tovenaars hier op het forum met hun projecten....

Maar gisteren heb ik me even bezig gehouden met een simpel iets : een "spanningsbewaker" voor de verschillende voedingen voor rond de treinbaan.

1 stuk 20 V
2 stuks 5V
3 stuks 12V

Deze worden in een (kleine)  PC behuizing ingebouwd en ik wil zien  of de spanningen OK zijn.

Elke voeding krijgt 2 LEDs  (1 gele, 1 rode) en daarmee kan ik 4 toestanden aflezen  (soort van binaire code)

0-0  =   NUL , geen spanning
1-0  =  Te weinig   (bvb  3,7V ipv 5V)
1-1  =  OK  (binnen tolerantie van ingestelde spanning bvb + / - 1 Volt,  tolerantie ook apart inte stellen)
0-1  = Te hoog   (overspanning  bvb  15V ipv 12V)

En dan nog een "controle LED" die nagaat of het geheel spanning heeft en eentje die aangeeft dat de monitor (Arduino printnje) werkt.


Ik zal foto's posten als het klaar is.  Printje is OK, software is OK, nu nog inbouwen.


Aangezien de ingang van de Arduino max 5V gelijkstroom kan hebben,  gebruik ik simpele spanningsdelers van  4x10K Ohm (en afgetakt over 1 van die 4), zodat de spanning aan de ingang tot 20V kan oplopen zonder schade aan de inputs.  Het   "map"  commando in de software laat dan toe  om makkelijk te bepalen wat de eignelijke spanning is.

0-5 V =  1024  waarden

dus met de "doel" spanning in  EEPROM, lees ik die uit bij het starten,  en map ik dan naar 5V.

vb :   map(0,1024,0,20)   geeft een "resolutie" van  ongeveer 50 stapjes per Volt op de max 20 V ingang.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 13:50:11 pm
de goto's zijn weg en nu proberen ze weg te houden LOL

tja eens zo geleerd zit het hardnekkig ingebrand en moeilijk om het weg te krijgen

hier het aan gepaste programma en het werkt in simulatie ook nog

'****************************************************************
'*  Name    : kleine epw micro.BAS                              *
'*  Author  : [raf janssens]                                    *
'*                                                              *
'*  Date    : 22-12-2014                                         *
'*  Version : 1.4                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 12F629               ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
     
       CP_ON                 ; Code Protection aan

All_Digital TRUE             ; Alle poorten digitaal
 
Symbol sw1  = GPIO.2      ; ingang van vorige pic
Symbol sw2  = GPIO.3       ; detect inloop spoor
Symbol sw3 =   GPIO.4          ;detect stop spoor
Symbol poort2 = GPIO.0       ;uitgang naar volgende pic
Symbol poort1 = GPIO.1        ;uitgang pwm
 
Dim waarde  As Word          ; Variabele waarde pwm
Dim test As Byte
Clear                        ; Wis alle ram geheugen
 GPIO.1 = 0                  ;pwmlaag maken (invers pwm)
DelayMS 500                  ; Stabilisering 0.5_sec
 
             
 
         ;543210            ; Hulpregel Poort poort_A
  GPIO = %000000            ; Zet poort_A laag
TRISIO = %111100          ; Poort_A als ingang
 test = 0
 
 start:
 While 1=1
 While sw1 = 1 :Wend       ;als het vorige sein groen is doe dan niets
  For waarde = 0 To 255
        DelayMS 5
        While sw3 = 1 :Wend
        If waarde > 250 Then waarde = 255

        PWM GPIO.1, waarde, 1      ;Stuur 5 pulsen met pulsbreedte 'Duty', naar PORTA.1
   
    Next
        PWM GPIO.1,255 ,1
                       ;trein op het inloopspoor poort uitgang hoog maken
        While sw2 = 1 And sw3 = 1 :Wend
        poort2 = 1                 ;trein op het inloopspoor poort uitgang hoog maken
        While sw3 = 1 :Wend     ;    zolang er geen trein is op het inloopspoor poort uit laag houden
  While sw1 = 0  :Wend           ;als vorige sein rood is doe dan niets
   For waarde = 255 To 0    Step - 2
       DelayMS  20
       If waarde < 5 Then waarde = 0
       PWM GPIO.1, waarde, 1 
     Next 
    PWM GPIO.1,0 ,1
                 
         While sw2 = 0 :Wend
         While sw3 = 0 :Wend   ;zolang stop en inloop bezet is uitgang hoog houden
         
       poort2 = 0                       ;stop en inloop leeg dan poort uitgang laag maken
       Wend
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 december 2014, 15:24:06 pm
ik ben niet thuis in PICs, maar wat werkt er precies niet?
Stomme vraag misschien, maar krijg je die andere µC geprogrammeerd?

    PWM GPIO.1,0 ,1
                 
         While sw2 = 0 :Wend
         While sw3 = 0 :Wend   ;zolang stop en inloop bezet is uitgang hoog houden

Volgens mij blokkeer je het programma met die 2 "while ... wend". Of is dat de bedoeling?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 22 december 2014, 15:51:38 pm
hoi gerolf

nee en ja
ik blokkeer daar inderdaad het verloop van het programma maar dit is de controle dat zowel het inloop spoor als het stopspoor leeg is om daarna het achterliggende signaal op groen te kunnen zetten
als er bv een wagon los komt dan kan nooit het achterliggende signaal groen worden want de bezet melding blijft open
daar ik volledige controle op de sporen heb is dit overal zo in de signalen in geprogrammeerd.
nergens kan er dus een wagon loos blijven staan op de baan want dan valt alles gewoonweg stil
ik detecteer de twee want stel dat er een railbusje rijd wat maar alleen het stop spoor dekt dan is sw3 reeds vrij gegeven maar sw2 blijft bezet tot de bus van dit stukje rail afgereden is
hopelijk verstaan bare uitleg



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 december 2014, 17:23:29 pm
http://www.pctoytoy.be/2014/20140406_1.jpg
Peter, hoe heb je dat menu geïmplementeerd in de code?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 december 2014, 10:10:23 am
http://www.pctoytoy.be/2014/20140406_1.jpg
Peter, hoe heb je dat menu geïmplementeerd in de code?
Dat was een aanzet tot een soort van universele menu voor de PIC18 serie.  Staat wel nog niet op poten, maar ik heb het volledige project in je mailbox gedumpt  :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 23 december 2014, 10:46:17 am
En is reeds toegekomen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 december 2014, 15:06:39 pm
Raf, werkt je code nu?

Nu al die "Goto's" weg zijn, is de code leesbaar.

Ik ben zo vrij geweest om nog wat ruwe kantjes van je structuur te veranderen:

'****************************************************************
'*  Name    : kleine epw micro.BAS                              *
'*  Author  : [raf janssens]                                    *
'*                                                              *
'*  Date    : 22-12-2014                                        *
'*  Version : 1.4                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 12F629                ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
     
       CP_ON                 ; Code Protection aan

All_Digital TRUE             ; Alle poorten digitaal
 
Symbol sw1  = GPIO.2         ; ingang van vorige pic
Symbol sw2  = GPIO.3         ; detect inloop spoor
Symbol sw3 =   GPIO.4        ; detect stop spoor
Symbol poort2 = GPIO.0       ; uitgang naar volgende pic
Symbol poort1 = GPIO.1       ; uitgang pwm
 
Dim waarde  As Word          ; Variabele waarde pwm
Dim test As Byte
Clear                        ; Wis alle ram geheugen
 GPIO.1 = 0                  ; pwmlaag maken (invers pwm)
DelayMS 500                  ; Stabilisering 0.5_sec
 
             
 
;         543210             ; Hulpregel Poort poort_A
  GPIO = %000000             ; Zet poort_A laag
TRISIO = %111100             ; Poort_A als ingang
 test = 0
 
;start: -> vervangen door een 'oneindige' lus - label is dan niet meer nodig
While(1=1)
;als het vorige sein groen is doe dan niets
While sw1 = 1
Wend         

For waarde = 0 To 255
DelayMS 5
       
While sw3 = 1
Wend
       
If waarde > 250 Then
waarde = 255

;Stuur 5 pulsen met pulsbreedte 'Duty', naar PORTA.1
PWM GPIO.1, waarde, 1         
Next
       
PWM GPIO.1,255 ,1
        ;trein op het inloopspoor poort uitgang hoog maken
While (sw2 = 1 And sw3 = 1)
Wend
     
;trein op het inloopspoor poort uitgang hoog maken
poort2 = 1                 
     
;zolang er geen trein is op het inloopspoor poort uit laag houden
While sw3 = 1
Wend

        ;als vorige sein rood is doe dan niets
While sw1 = 0
Wend

For waarde = 255 To 0 Step - 2
DelayMS  20
                If waarde < 5 Then
waarde = 0
PWM GPIO.1, waarde, 1
      Next
PWM GPIO.1,0 ,1
                 
      While sw2 = 0
Wend
     
;zolang stop en inloop bezet is uitgang hoog houden
While sw3 = 0
Wend

;stop en inloop leeg dan poort uitgang laag maken
poort2 = 0
Wend
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 23 december 2014, 15:52:58 pm
der zaten in je verandering enkele fouten

while [1=1) werkt niet de () zijn er teveel aan

If waarde > 250 Then
         waarde = 255

dit moet 1 regel zijn

While (sw2 = 1 And sw3 = 1)

hier weer de () teveel
nu nog testen of het werkt in simulatie
gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 23 december 2014, 23:10:02 pm
Niet direct microcontrollers maar ik heb deze week mijn C terug afgestoft. Zal meer dan een stofvod voor nodig zijn na 25 jaar vrees ik. Eerder een slijpschijf met korrel 40. De compile errors vlogen rond de oren. Maar het begint stilaan terug te komen.

Moet nu eens uitzoeken hoe het zit om de code te splitsen over verschillende files en hoe een ide te gebruiken zoals het moet. Nooit veel meer geleerd dan simpele programma's. En dan nog in assembler, pascal en fortran. Vang daar maar eens iets mee aan.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 08:19:01 am
na 25 moet dat nog lukken
basic na 40 jaar lukte ook nog aardig maar ja het is terug boekje opendoen of de syntax op internet nog eens na lezen

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 11:07:21 am
weer een progje aangepast met veel moeite eigenlijk maar het is wel eenvoudiger geworden maar of het gaat werken ??
de bedoeling is dat ik deze pic stuur met een handkastje
4 knoppen zijn ter beschikking
optrek laat de trein versnellen tot max (0)
rem laat de trein afremmen tot stop (256)
klinkt raar maar dat komt door dat ik pnp fets gebruik ik stuur namelijk met de plus en de massa dient als detectie dus kon ik niet gebruiken

omschakel dient om een hogere spanning te geven om de loco's van vooruit naar achteruit te laten rijden
ik moet zien of ik dit via de pwm zou kunnen doen en dus altijd op 20 volt zou kunnen rijden
dit zou de schakeling  vergemakkelijken

nood is de nood stop en zet dus beide uitgangen op 256 dus stop
al de schakelaar worden met de massa gestuurd dus ik kan over 5 draden alles mooi sturen
vanaf het overname spoor zou dus alles na de overname via deze knopjes het rangeer terrein bestuurt worden
ik wil ook nog iets zelf doen dus alleen de rinbaan gaat op automaat de rest manueel
hier de code
'****************************************************************
'*  Name    : handsturing                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2014 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 24/12/14                                       *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 16F628A               ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
       LVP_OFF,_             ; Low-Voltage Programming uit
       CP_ON                 ; Code Protection aan
 
All_Digital TRUE             ; Alle poorten digitaal
 
Symbol optrek  = PORTA.0       ; oprtekken
Symbol rem  = PORTA.1       ; afremmen
Symbol schakel =PORTA.2          ;schakelen voor/achter
Symbol  nood = PORTA.3       ;alles direct stop
Symbol hoog = PORTA.4        ;uitgang omschakeling

 
Declare CCP1_Pin PORTB.3     ; PWM op poort B.3
 
Dim waarde  As Word          ; Variabele waarde pwm
Clear                        ; Wis alle ram geheugen
 
DelayMS 500                  ; Stabilisering 0.5_sec
 
        ;76543210            ; Hulpregel Poort poort_B
PORTB = %00000000            ; Zet poort_B laag
TRISB = %00000000            ; Poort_B als uitgang
 
        ;76543210            ; Hulpregel Poort poort_A
PORTA = %00000000            ; Zet poort_A laag
TRISA = %11111111            ; Poort_A als ingang

While 1=1

 If rem = 0 And waarde < 256 Then waarde = waarde +1   Else waarde = 256
 If optrek  = 0 And waarde > 0 Then waarde = waarde - 1 Else  waarde = 0
 If  schakel = 0 Then waarde = 256
  If schakel = 0 Then hoog = 0
  If schakel = 1 Then hoog = 256
 If nood = 0 Then waarde = 256
 If nood = 0 Then hoog = 256
 HPWM 1,waarde,2000                   
Wend
 

gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 11:51:00 am
dit werkt dus zo niet nu dus terug opnieuw beginnen van 0 af aan
de pwm werkt verkeerd als ik de echte pwm gebruik zou deze geinverteerd moeten zijn maar dat is dus niet zo
dus ????
effe terug vanaf nul en dan kijken wat er verkeerd is gegaan

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 24 december 2014, 12:29:03 pm
Ik vind die syntax van die Basic zo moeilijk te volgen... geen idee of er nog zijn die dezelfde mening hebben...


IF-statement
JAL (Just Another Language)
if (variabele=168) then
;actions here
else
;actions here
end if
ANSI C
if (expression)  {
Block of statements;
}
else {
Block of statements;
}
While
JAL:
while (test=true) loop
;statements here
end loop
C
while(test=true){
;statements here
}
is toch veel eenvoudiger te volgen?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 24 december 2014, 12:54:34 pm
Dat is toch allemaal ongeveer hetzelfde? Ik zie geen probleem... (Ik ben dan ook nog van den ouden stempel en grootgebracht met Basic  ;)).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 13:00:25 pm
opnieuw begonnen en nu werkt het wel

Device 16F628A                ;Gebruik een 16F628A type
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
All_Digital TRUE              ;Alle ingangen digitaal

;Poortnamen
 Dim motor As Byte
Symbol optrekken = PORTA.0
Symbol afremmen = PORTA.1
Symbol noodstop = PORTA.3
Symbol schakel = PORTA.2
Symbol schak = PORTB.0
;        76543210
PORTB = %10111111
TRISB = %00000000
PORTA = %10111111
TRISA = %10111111             ;Maak van PORTA.6 een uitgang
Dim Duty As Byte

Clear                         ;Wis alle RAM geheugen
Duty = 255
schak = 1
DelayMS 300
;Hoofdprogramma
While 1 = 1
 If optrekken = 0 Then Duty = Duty +1
 If afremmen = 0 Then Duty = Duty -1
 If noodstop = 0 Then Duty = 255
 If schakel = 0 Then Duty = 255
 If schakel = 0 Then schak = 0
 If schakel = 1 Then schak = 1
 If Duty < 3 Then Duty = 20                 
  If Duty > 253 Then Duty = 254
    PWM PORTA.6, Duty, 5       
Wend                         

End

wat die jal aan gaat is er eigenlijk niet veel verschil dan basic
bij basic is het if zo


IF ToetsHoger = LAAG AND Snelheid < 255 THEN INC Snelheid

in jal zou het dus dit worden
IF ToetsHoger = LAAG
    AND Snelheid < 255
     THEN INC Snelheid


je zet dus alles achter elkaar in plaats van bij jal alles onder elkaar
ik vind het bij basic beter leesbaar dan bij jal

maar ja 40 jaar geleden groot getrokken met basic dus dat zit er in geworteld
commedore basic da was een ander soort wat je niet wil weten
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 24 december 2014, 13:14:11 pm
je zet dus alles achter elkaar in plaats van bij jal alles onder elkaar
ik vind het bij basic beter leesbaar dan bij jal

Bij één instructie is dat voor jou misschien beter leesbaar maar bij meerdere?

if situatie1 = iets then situatie2 = iets_anders : situatie3 = nog_iets_anders : situatie4 = iets_anders : .... : situatie_elvendertig = weer_iets_anders

 ::) ::) ::)


in jal zou het dus dit worden
IF ToetsHoger = LAAG
    AND Snelheid < 255
     THEN INC Snelheid

je zet dus alles achter elkaar in plaats van bij jal alles onder elkaar
ik vind het bij basic beter leesbaar dan bij jal

Neen je zet niet ALLES op een andere regel, een vergelijking ga je niet splitsen (tenzij je je code wil afdrukken en je vergelijking veel te lang wordt):

if((toets_hoger == laag) & (snelheid < 255))then
   inc(snelheid)
end if

Het is te vergelijken met leestekens in een tekst: die zijn er ook om die tekst duidelijker leesbaar te maken...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 13:27:22 pm
hoi peter

ja daarin heb je dus wel gelijk maar voorlopig heb ik dat probleem nog niet

je hand tekening vind ik wel tof maar heb je een word of een byte voor je dim sheep gebruikt want anders ben je beperkt tot 256 schapen en als je dan nog niet slaapt heb je een probleem LOL
dan lig je heel de nacht te woelen

gr raf en nu hop naar het volgende programma
de ledjes onder de peron overkapping laten aan flikkeren


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 24 december 2014, 13:47:09 pm
je hand tekening vind ik wel tof maar heb je een word of een byte voor je dim sheep gebruikt want anders ben je beperkt tot 256 schapen en als je dan nog niet slaapt heb je een probleem LOL
dan lig je heel de nacht te woelen

Op drie regeltjes 'handtekening' kan je niet veel kwijt.  Vandaar (uitzondering!) dat ik alles op één regeltje heb geplaatst ;) .

Soms is het een 2 bit variabele, andere keren is dat soms een long word  ;D

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 24 december 2014, 13:55:46 pm
Ik vind die syntax van die Basic zo moeilijk te volgen... geen idee of er nog zijn die dezelfde mening hebben...

ANSI C
if (expression)  {
Block of statements;
}
else {
Block of statements;
}

Je vergeet:
exp1 ? exp2 : exp3;

waar exp1/2/3 elk verschillende statements kunnen zijn. Ook heel leesbaar...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 13:59:04 pm
da word dan in basic

select case expr
case value X
statement(s) to execute
case value Y
statement(s) to execute
case value Z
statement(s) to execute
case else
statement(s) to execute
end select
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 14:03:49 pm
zo ook een vraagje van een moeder aan een computer nerd

wil je voor me eventjes naar de winkel gaan

ja

haal een pak melk

en als ze eieren hebben breng er dan 6 mee

ok

komt die man terug en wat heeft die bij

6 pakken melk want ze hadden eieren

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 24 december 2014, 14:07:30 pm
@Raf: gebruikt toch indents (inspringen met tab of spaties).  Veel duidelijker!

select case expr
  case value X
    statement(s) to execute
  case value Y
    statement(s) to execute
  case value Z
    statement(s) to execute
  case else
    statement(s) to execute
end select


...ik heb deze week mijn C terug afgestoft. Zal meer dan een stofvod voor nodig zijn na 25 jaar vrees ik...

Het voordeel is dat er in sé (woordspelinkske) op de 25 jaar niets is veranderd (gelukkig!).  Een ander voordeel dan 25 jaar terug is dat je nu tig online cursussen en code-snippets kan vinden (was 25 jaar geleden wel wat anders).
Succes ermee!


...in assembler, pascal en fortran. Vang daar maar eens iets mee aan...

Met assembler van je alles aan.  Kijk maar naar Geert.  Alleen moet je er dubbel je hoofd bijhouden en is de ontwikkelingssnelheid heel laag.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 december 2014, 14:31:30 pm

Met assembler van je alles aan.  Kijk maar naar Geert.  Alleen moet je er dubbel je hoofd bijhouden en is de ontwikkelingssnelheid heel laag.

Lap zeg, ik werk dus te traag  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 24 december 2014, 14:40:01 pm

Met assembler van je alles aan.  Kijk maar naar Geert.  Alleen moet je er dubbel je hoofd bijhouden en is de ontwikkelingssnelheid heel laag.

Lap zeg, ik werk dus te traag  ;)

Geert

 ;D ;D ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 24 december 2014, 14:53:12 pm
ja das een vast staand feit maar dat haal je daarna in want assembler werkt veel sneller dan eerst alles door een compiler te halen

uiteindelijk worden het dan ook 0/1 en
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 24 december 2014, 15:35:31 pm
C is niet veranderd maar de moderne ide's maken het toch wel anders. Ik ben momenteel meer daarmee aan het vechten dan met de code. Vooral opsplitsen in verschillende files -wat ik nooit gedaan heb- valt tegen. Je vind wel veel over de taal zelf maar weinig over "intermediate" programmeren. Eenmaal meer dan "hello world" maar minder dan een relationele database. Iemand een goed forum/boek/website daarvoor?

Assembler heeft tegenwoordig niet veel voordeel meer tov gecompileerde talen zoals C (Pascal, Ada, etc) De compilers zijn zo goed dat je amper nog iets kan winnen. Zeker als je moet gaan foutzoeken of 1 jaar later functionaliteit wil wijzigen. En dat was dan een Z80 bij mij, met Eprom. Begin ik niet meer aan.

Trouwens, ik ben niet direct op een microcontroller bezig maar op pc. Helemaal geen goesting om zo'n beest in assembler te gaan doen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 26 december 2014, 09:16:31 am
Johan,

zoek eens op "Modular programming in C" of zoiets.
Dit zal je de informatie geven die je zoekt.

Nu is het niet echt zo dat C niet veranderd is. C is wel degelijk veranderd de voorbije jaren vb ISO C90, C99, C11 standaard). Nu spreek ik niet over de basis syntax maar er zijn heel wat uitbreidingen toegevoegd Zo is bvb. in de ISO C99 versie de mogelijkheid toegevoegd voor inline functies terwijl deze in de ISO C90 nog niet aanwezig was. Op zich heel handig, vooral bvb in interrupt handlers (en een welkome aanvulling voor diegenen die ermee vertrouwd waren in C++)
Ook de 64 bit integer variabele (long long) is iets wat het voorbije decennia toegevoegd is.

mvg,

Patrick Smout
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 29 december 2014, 22:23:08 pm
De LocoNet start/stop heeft duurtesten doorstaan dus nu op naar een volgende stap (om uiteindelijk tot een LocoNet synoptisch bord te komen).

Waarom een synoptisch bord op het LocoNet en niet gewoon het MM/DCC signaal van de rails decoderen (wat ondertussen maar weinig geheimen meer voor mij heeft)?  Op het MM/DCC signaal zie je alles passeren: een wissel wordt omgeschakeld, een sein wordt gezet, een ontkoppelingsrail wordt bediend.  Maar je ziet het enkel passeren en kan zelf niets sturen.  Info over een bezetmelder in het MM/DCC signaal?  Daar kom je totaal niets van te weten.

Al die info (wissels, seinen, melders, ontkoppelingsrails, locomotief gegevens, ...) passeren wel op het LocoNet...  ...En het zijn net die gegevens die ik nodig heb voor een synoptisch bord.



In eerste instantie wil ik de toestand van 16 'devices' weergeven.  Ik noem ze 'devices' want het kan een wissel zijn (2 standen - led rood of led groen), een sein (3 standen - rood, geel of groen), een ontkoppelingsrail (niet bekrachtigd: magenta - bekrachtigd: rood) of een bezetmelder (niet bezet: ciaan - bezet: blauw).

Ik wil het project ook universeel opzetten.  Ieder van de 16 devices moet elk device aan kunnen (via een eenvoudige herprogrammering met een druktoets en een digitale (LocoNet) centrale).  Elke punt op het bord zal dan bestaan uit een drukknopje en een RGB led (een drukknopje bij een melder heeft wel geen zin - tenzij om de reactie van de baan-besturings-software te testen = spookmeldingen genereren).



Ik wil 16 druktoetsen lezen en 16 RGB leds aansturen (16 x 3 = 48 leds).  Nu heb ik wel nog enkele pootjes op mijn µC over maar veel te weinig om dat alles te verwerken.  Dus extra hardware.

De toetsen wou ik in eerste instantie in een 4x4 matrix plaatsen - dat zijn rechtstreeks op de µC nog 8 IO pennen die ik nodig heb - en om I/O te besparen had ik mijn oog laten vallen op een PCF8574 (http://www.nxp.com/documents/data_sheet/PCF8574.pdf), een oud gediende en betrouwbare I2C naar 8 bit IO expander.  Enkele testen en dat werkte.  Helaas wel heel wat software om die 4x4 matrix via I2C aan te sturen en uiteindelijk uit te lezen.

Een verder speurtocht bracht mij bij een MCP23017 (http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf) (eveneens een I2C IO expander maar wel 16 bits) en na uitpluizen van de lijvige datasheet tot de conclusie gekomen dat die expander de oplossing is.  Geen matrix meer maar aan elke van de 16 ingangen een schakelaartje (pull-up weerstand niet nodig - interne weak pull-up softwarematig in te schakelen).  Via I2C telkens de ingangen opvragen om te zien of er een toets is ingedrukt, is ook niet nodig.  Een interruptlijntje geeft aan wanneer een toets wordt ingedrukt of los gelaten.  Dus enkel op tijd en stond dat lijntje controleren en daarmee is de kous af.
...Misschien (als ik tijd en goesting heb) kan ik in een latere fase daarmee een LocoNet terugmelder opzetten met slechts 2 IC's  8)



Voor die 16 RGB leds (waarbij ik ook de helderheid wil regelen - via een bepaald (te programmeren) locomotiefadres) heb ik het direct laten varen om die rechtstreeks vanuit de controller aan te sturen (Charlieplexing (http://en.wikipedia.org/wiki/Charlieplexing) even bekeken maar dat idee toch naast me neergelegd).

Bij een verdere speurtocht (wat is dat internet toch een luxe) naar externe hardware toch een leuk IC'tje gevonden: MAX7219 (http://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf) - stuurt op zijn gemak 64 ledjes aan MET helderheidsregeling via slecht 3 I/O poortjes.



En nu een extra breadboardje bijprikken en nog een hoop draadjes van isolatie ontdoen en experimenteren...

Wordt (hopelijk) vervolgd...


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 29 december 2014, 23:16:59 pm
Benieuwd naar de code!


Ingewikkelde menucode even aan de kant gezet
(http://www.treinbaanrian.be/images/uplc/uplctop%20(Small).JPG)

Eens mijn µPLC modules nuttig inzetten, tot nu toe al nuttig kunnen gebruiken voor enkele kleine experimentjes, maar nu dus een echte toepassing
Baantje aan het bouwen achter mij  (als ik wat tijd heb ruim ik op en maak ik  wat fotootjes). Doel is om met het ding de opstelsporen te besturen (3 sporen waar 2 treinen op kunnen staan, en een kopspoor). Besturing dus van 7 stopsecties (simpelweg met een relais) en 3 wissels.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 30 december 2014, 05:14:31 am
@ Peter: je kan een µC toch programmeren tot I2C-slave ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 30 december 2014, 19:16:10 pm
@ Peter: je kan een µC toch programmeren tot I2C-slave ?

Gerolf: ja...  I2C zit in veel van de PIC's die ik gebruik zelfs hardwarematig ingebouwd (bij sommige enkel slave, bij andere zowel master als slave).   ...Maar terug een programma schrijven, extra weerstanden want de PIC's die ik gebruik hebben slechts op één poort (8 bits) interne pull-up weerstanden.  Een I2C programma debuggen (moet ik weer die Bus-Pirate gaan opsnorren)...
Die I2C IO expanders zijn speciaal voor dit doel ontwikkeld en kosten ook maar een appel en een ei.

...En wat je allemaal met een controller kan doen:
Citaat van: Willem Vermandere
k Kost het zodanig programmeren
Totda 'k van toeten noch blazen ni meer wist
:D :D :D


Benieuwd naar de code!

...Ingewikkelde menucode even aan de kant gezet...

Rian, zoek dan maar een extra paar bretellen om je broek op te houden.  Die menucode is hierbij 'klein bier'...

Om dat LocoNet signaal uiteindelijk te interpreteren maak ik gebruik van 'layers' (een beetje gebaseerd op het OSI-model (http://nl.wikipedia.org/wiki/OSI-model)).  Eén layer bekijkt of de data voldoet aan de eisen gesteld in de LocoNet Personal Edition (http://www.digitrax.com/static/apps/cms/media/documents/loconet/loconetpersonaledition.pdf)  De individuele bits worden omgevormd tot bytes.  Indien OK geeft die layer de data door aan een volgende layer die kijkt of de individuele bytes van een pakket voldoen aan de eisen en eens die pakketten daar zijn goed bevonden, worden ze doorgegeven aan weer een volgende layer die die pakketten eventueel interpreteert (eventueel omdat er pakketten worden ontvangen waar er in een synoptisch bord niets kan mee worden aangevangen).
Dit alles met een softwarematig gescheiden ontvangst- en zendgedeelte en een gescheiden pakket-generator (toetsenbord) en pakket-interpreter (16 RGB leds).  Gelukkig bestaan er interrupts en controllers met voldoende geheugen (PIC18F2550)...

Vrij complexe materie maar een heerlijk gevoel telkens ik weer een stap dichter sta...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 30 december 2014, 19:56:50 pm
Ja Peter, hoe jij met µC technologie kan toveren daar doe ik mijn hoedje voor af. En dan nog eens ondersteund met zeer handige en leerzame links. Doe zo verder, ik blijf dit volgen. En zeker links erbij blijven vermelden, ik sla deze allen op.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 30 december 2014, 21:20:26 pm
Menucode: te ingewikkeld als ontspanning 's avonds na het veel te ingewikkelde studeren... Is allicht niet zo moeilijk, maar heb geen goesting om m'n hoofd te breken op iets als ik dat al heel de dag moet doen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 30 december 2014, 21:29:41 pm
peter een probleem met ccpmx  bij een 16f88
die heeft twee ccp ingangen waar je deze een beetje kan verkrachten om er een A/D converter van te maken
we krijgen dit in basic niet goed of helemaal niet aan het werk
deze twee registers zouden we met elkaar moeten kunnen vergelijken
dit is om een brander van een stoom machine te sturen
heb jij daar eventueel een oplossing voor

gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 30 december 2014, 21:38:25 pm
Ingangen verkrachten om er een adc van te maken? Ik zou zeggen: ga op zoek naar een µc met een echte ADC ingebouwd.... (moest die dat niet hebben). Met PWM kun je wel een beetje een DAC maken, maar ook dat lijkt me prutsen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 30 december 2014, 22:08:06 pm
peter een probleem met ccpmx  bij een 16f88
die heeft twee ccp ingangen waar je deze een beetje kan verkrachten om er een A/D converter van te maken
we krijgen dit in basic niet goed of helemaal niet aan het werk
deze twee registers zouden we met elkaar moeten kunnen vergelijken
dit is om een brander van een stoom machine te sturen
heb jij daar eventueel een oplossing voor

Raf, CCP is een Capture/Compare/PWM module; heeft volgens mij weinig te zien met ADC (tenzij je een tijdsmeting/tijdsvergelijking wil doen?).  Op een 16F88 zitten trouwens 7 ADC ingangen, waarom gebruik je die niet als het effectief een analoge meting is?

Alle gegevens zijn in de 228 pagina's tellende datasheet (http://ww1.microchip.com/downloads/en/DeviceDoc/30487c.pdf) te vinden.

En om zo maar een pasklaar antwoord op je vraag te formuleren, moet ik ook die 228 pagina's doorbladeren...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 30 december 2014, 23:12:58 pm
...hoe jij met µC technologie kan toveren...

...Was ik maar een tovenaar...  ...ik lees veel, heel veel saaie technische datasheets...  ...En heb mijn 'assembler' bagage...

Waar het hem om gaat is dat ik, net als jij in een assembler tijdperk ben 'gekweekt'.  Assembler heeft op al mijn programma's zijn stempel gezet (zowel privé als professioneel - als je alleen bent om  software te schrijven, schrijf je die naar je eigen goesting/kennis/ervaring).  In elke taal probeer ik de assembler denkwijze te implementeren (vandaar dat mijn code soms moeilijk vatbaar/leesbaar is). 
Jongere generaties en nieuwkomers zien assembler vaak als een draak waar je heel veel ontwikkelings-, debug- en denktijd moet insteken (zie mijn reactie #705 - en die was zeker niet negatief bedoeld!).

Assembler, de taal van de electronica.  Denk in logische bouwstenen (destijds TTL) en zet dat om in code en je hebt een programma.  Als je nu aan een serieuze technicus vraagt wat TTL is, antwoord die steevast met 'Time To Live'...

Al geruime tijd gebruik ik JAL (http://www.justanotherlanguage.org/) als PIC programmeertaal.  Een hogere programmeertaal met een lage instapdrempel maar die ook low-level-programmering toelaat (er is zelfs een instructie ASM voorzien om delen van je code in assembler te schrijven).



...En zeker links erbij blijven vermelden...

Het is maar een kleine moeite om die in de tekst in te pakken en niet gedeelde kennis is verloren kennis!


Menucode: te ingewikkeld als ontspanning 's avonds na het veel te ingewikkelde studeren...

Ik heb ook veel te weinig commentaar in die code geschreven; maar ja: "een aanzet tot een soort van universele menu voor de PIC18 serie".  Met veel commentaar raak je daar wel uit wijs, je bent verre van een uil!  ;)

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 08:52:29 am
ik heb nog op deze manier leren programmeren

ld a,(Height)                 
  ld b,a                         
  ld a,(Width)                 
  add a,a                       
  add a,b                       
  add a,b                       
  ld (Perim),a
dit is een routine om een vierkant of rechthoek te maken en dan alles in perim op te slaan
maar das meer dan 40 jaar gelden

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 31 december 2014, 10:31:54 am
Je kan met een CCP een adc maken met nog wat randelectronica: double slope convertor. Niet de snelste maar als het moet...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 december 2014, 10:53:13 am
Raf, ik ga een poging doen om je probleem te begrijpen.  Verbeter me als ik je probleem verkeerd inschat.

...een probleem met ccpmx  bij een 16f88 die heeft twee ccp ingangen waar je deze een beetje kan verkrachten om er een A/D converter van te maken...

Een 16F88 heeft inderdaad 2 CCP ingangen (RB0 en RB3) maar heeft intern slechts één Capture, Compare, PWM (CCP) module.

...deze twee registers zouden we met elkaar moeten kunnen vergelijken...

Je wil dus voor de ene meting de CCP module aan RB0 koppelen en voor een andere meting de CCP module aan RB3 hangen?

...we krijgen dit in basic niet goed of helemaal niet aan het werk...

Helaas krijg je dat in geen enkele taal opgelost: CCPMX is een configuratie bit (fuse) in het 'CONFIGURATION WORD 1 REGISTER'.  En het antwoord waarom je dat niet in je programma kan wijzigen, vind je op pagina 129 van de datasheet (hoofdstuk 15.1):

Citaat van: 'Microchip datasheet 16F88'
15.1 Configuration Bits
The configuration bits can be programmed (read as ‘0’), or left unprogrammed (read as ‘1’), to select various device configurations. These bits are mapped in program memory locations 2007h and 2008h.
The user will note that address 2007h is beyond the user program memory space which can be accessed only during programming.

Je zal dus op zoek moeten gaan naar een andere oplossing softwarematig of naar een andere controller met 2 CCP modules (oa 18F2455/2550/4455/4550).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 12:59:48 pm
hoi peter

blijkt dat die signalen op RA3 en RA4 naar buiten komen
maar dan nu de vraag zijn die alleen maar 1 of 0 of komt daar een serieel signaal naar buiten
blijft niet gemakkelijk en op sommige forums krijg je dat je de manual moet lezen
maar ik denk dat er veel zitten die hun belangrijker voelen dan ze zelf zijn en zelf het antwoord niet weten
aanbieding van dat er iemand het wel voor me zou willen maken en dan eventueel een prijsofferte er achter aan

het is modelbouw en zowel Harm als ik willen LEREN en zelf uitvogelen hoe het moet .
maar soms zitje muur vast en vroeger kon ik het "foerd" gaan vragen en die mensen waren wel bekwaam en konden dan na x aantal tijd een oplossing geven waar je mee verder kon
ze gaven niet meteen de oplossing maar zetten wel aan tot verder doen en dat was wat de bedoeling is
 
hier wat we soms terug krijgen van andere fora

Zelfs die electronica-theoriemannetjes kunnen/willen niet even een voorbeeld regeltje in elkaar steken))
Gaan alleen maar mekkeren dat je een thermokoppel niet direct aan je PIC mag aansluiten, dat moet via Een thermokoppel vraagt een vij speciale behandeling (juiste connectors, compensatie, versterking), oftewel een gespecialiseerd signaalconditionerings IC,, terwijl ook jij weet dat mijn sleepboot al jaren goed werkt.

en ja zijn sleep boot werkt reeds jaren perfect
nu is het probleem dat Harm een speciale stoom ketel heeft gemaakt voor in een nieuwe boot
een thermo koppel via een opamp aan RA0 (a/d )om de hitte van de brander vlam te meten
de tweede sensor aan een opamp aan RA2 (a/d)om de kleur van de ceramische brander te meten
en deze twee vergelijken daar dan de gasklep mee bedienen
de reden is dat er een vlam moet zijn en bij voldoende stoom druk mag die vlam op waak vlam over gaan
de tweede IR sensor dient om de kleur van de ceramische brander in het oog te houden
is de kleur BV te wit dan is er teveel vlam en kan deze Ceramsiche brander smelten
is ze te rood dan is de vlam te koud om voldoende stoom te ontwikkelen en de motoren aan het draaien te houden

(http://www.modelbouwforum.nl/forums/members/baggeraar-albums-baggermolen-picture206076-herschaalde-kopie-van-14-nov-2014-001.jpg)
(http://www.modelbouwforum.nl/forums/members/baggeraar-albums-baggermolen-picture206077-herschaalde-kopie-van-14-nov-2014-003.jpg)

dit is de stoom ketel (zelfbouw)
(http://www.modelbouwforum.nl/forums/members/baggeraar-albums-baggermolen-picture203681-herschaalde-kopie-van-14-okt-2014-003.jpg)
de brander met ceramiek blokken

niet zo een gewoon spelletje want loopt het verkeerd doet knal en das nie plezant
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 31 december 2014, 14:12:29 pm
hoi peter

blijkt dat die signalen op RA3 en RA4 naar buiten komen
maar dan nu de vraag zijn die alleen maar 1 of 0 of komt daar een serieel signaal naar buiten
blijft niet gemakkelijk en op sommige forums krijg je dat je de manual moet lezen
maar ik denk dat er veel zitten die hun belangrijker voelen dan ze zelf zijn en zelf het antwoord niet weten
aanbieding van dat er iemand het wel voor me zou willen maken en dan eventueel een prijsofferte er achter aan

Raf, het probleem is dat er zoveel versies van die µP zijn dat je niet alles van elk type kan weten. En de handleiding lezen is echt wel een noodzaak. Het is natuurlijk niet leuk maar zoals Peter hierboven schreef: het staat in de manual.

Zelfs die electronica-theoriemannetjes kunnen/willen niet even een voorbeeld regeltje in elkaar steken))
Gaan alleen maar mekkeren dat je een thermokoppel niet direct aan je PIC mag aansluiten, dat moet via Een thermokoppel vraagt een vij speciale behandeling (juiste connectors, compensatie, versterking), oftewel een gespecialiseerd signaalconditionerings IC,, terwijl ook jij weet dat mijn sleepboot al jaren goed werkt.

Allemaal relatief, wil je op 1°C nauwkeurig meten elke keer opnieuw of steekt het niet op een graad of 10? In het eerste geval ga je niet kunnen zonder koude junctie compensatie, de correcte kabel en software interpollatie. In het tweede geval gaat jouw methode ook werken. Het is niet omdat die mensen je de methode geven om het goed te doen dat je moet denken dat ze met je voeten spelen en dat je er minachting voor moet hebben "omdat ze het te ingewikkeld maken". Ze doen dat echt met een reden, dat is niet mekkeren.

Als ik op het werk een opstelling bouw om Pt100 thermometers af te regelen dan doe ik dat hoe het moet. Die zaken gaan naar klanten en die zijn tot op 1°C correct. Dat is met de juiste kabel, de juiste connectoren etc. Als dat op de werf enkel getest moet worden of het werkt dan doe ik dat ook met een stuk koperdraad en een suikertje.

Die ketel interesseert me wel :D Kan je daar wat maten opkleven? Diameter buis en een lengte hier en daar is fijn. Lijkt op een kruising van een Yarrow, Thornycroft en Woolnough.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 31 december 2014, 14:46:07 pm
Raf, met je uitleg nu weet ik wat de bedoeling is, maar dat heeft niets meer te zien met die CCPMX fuse.

C1OUT en C2OUT zijn de uitgangen van de twee analoge comparators en als je die gewoon als comparator gebruikt (=vergelijker) geven die een 1 of een 0 op de uitgang afhankelijk van het verschil in spanning tussen de twee verschillende ingangen.  Op pagina 122 zie je op welke 8 manieren je beide comparators kan schakelen.

Maar als ik verder lees, koppel je een thermokoppel aan RA0 en een (analoge?)sensor aan RA2.  RA0 en RA2 hangen beiden aan een andere comparator.  Ga je dan op de andere ingang van de comparators een referentiespanning zetten?
Of is het de bedoeling dat je gewoon de ADC van de controller gaat gebruiken? en digitaal de waarden gaat vergelijken?

Voor iemand je verder kan helpen, ga je toch nog wat meer uitleg moeten geven of eventueel een schema bijvoegen.



Heel mooi (en ingewikkeld) zilversoldeerwerk!

...maar als ik naar de druk op die manometer kijk, huiver ik...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 14:51:43 pm
hallo havoc

het is een yarrow ketel type

het probleem met die pt100 is dat die meer dan 5 volt nodig heeft en der is maar 12 volt max aan boord van de te bouwen boot
en minachting heb ik niet en nooit gehad behalve dan als dommerikken zich slimmer willen voordoen dan ze zijn
zoals BV in 900 topic's aan geven dat ze weten hoe het moet maar nog NOOIT een oplossing hebben gegeven of ooit een werkend gebouwd stuk van hun zelf hebben laten zien zowel op electro als modelbouw gebied

ik zal eens zien of Harm de tekeningen van de yarrow kan door mailen

gr raf

 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 14:57:39 pm
ja op de andere ingang van de comperator komt een referentie spanning
maar het probleem is dat er eigenlijk twee verschillende referenties zouden moeten zijn en dat kan niet met deze processor heb ik begrepen
er is maar 1 ingang welke je de twee tegelijk als referentie spanning kunt gebruiken

gr raf en ik zal eens kijken wat er van de sturing reeds klaar is want er zit meer dan alleen maar dit in de processor
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 31 december 2014, 15:03:54 pm
Je wil ze inzetten als window comparator?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 31 december 2014, 15:16:36 pm
TIK  TAK ik kan niet meer volgen, peis dat ik een oude vent ben.....

zal maar sebiet naar het zand manneke kijken op tv, dan snap ik nog iets  :) :) :) :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 31 december 2014, 15:29:56 pm
Raf ik raad je aan je probleemstelling opnieuw op te starten in een nieuw draadje.

Ik ben beroepsmatig meet en regeltechnieker.  Ik ken bijgevolg heel wat over temperatuurmetingen. Als hobby ken ik redelijk wat over PIC µC en de hardware daarvan. Ik wil je wel verder helpen indien ik je wensen iets beter ken.  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 16:02:00 pm
Hallo Geert

ik zal zien of ik Harm (das een persoon) die de ketel en dergelijke gebouwd heeft mee naar hier kan overhalen.
ik heb mijn hulp aan geboden omdat ik wel een beetje uit de voeten kan met een picµp maar mijn kennis is beperkt

dan zal ik een nieuw draadje op starten en dan zien we wel hoe het loopt
Harm kan beter uit leggen wat hij wil bereiken en het is niet zijn eerste project
hij heeft reeds een stoom sleepboot waar hij maar met een sensor en een picµp de brander stuurt maar deze ketel is meer complex

gr raf   
 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 31 december 2014, 20:04:49 pm
naar hier kan overhalen.

Dat is gelukt Raf en gelukkig ben ik toegelaten op dit forum.(heren, dank daarvoor)

Ik zal eerst maar eens doorlezen wat er al besproken is.
Heb ondertussen de 16F88 zo dat die al 3 verschillende ingangen bekijkt op de grootte van de spanning, na ADC maakt hij er getallen van op een display.
Verder is het ook gelukt om één vorm van vergelijken (compare) werkend te krijgen. (met wisselende ingangsspanningen die liggen tussen 9mV (lager gaat mijn potentiometer spanningsdeler niet) en de 5V.
Zojuist nog ruzie gehad met CVRCON, dus het vordert.
 8)

groet van Harm

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 december 2014, 20:23:56 pm
Hé Harm welkom hier

ik denk dat we nu beter een nieuw  draadje gaan openen voor dit specifieke probleem mijn gedacht


gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: MickeyMouse op 01 januari 2015, 10:17:51 am
Citaat
Waar het hem om gaat is dat ik, net als jij in een assembler tijdperk ben 'gekweekt'.  Assembler heeft op al mijn programma's zijn stempel gezet (zowel privé als professioneel - als je alleen bent om  software te schrijven, schrijf je die naar je eigen goesting/kennis/ervaring).  In elke taal probeer ik de assembler denkwijze te implementeren (vandaar dat mijn code soms moeilijk vatbaar/leesbaar is). 
Jongere generaties en nieuwkomers zien assembler vaak als een draak waar je heel veel ontwikkelings-, debug- en denktijd moet insteken (zie mijn reactie #705 - en die was zeker niet negatief bedoeld!).

Assembler, de taal van de electronica.  Denk in logische bouwstenen (destijds TTL) en zet dat om in code en je hebt een programma.  Als je nu aan een serieuze technicus vraagt wat TTL is, antwoord die steevast met 'Time To Live'...
Zo herkenbaar !!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 02 januari 2015, 15:04:06 pm
Hé Harm welkom hier
Dank Raf
Ik heb na wat dagen "freubelen", in gang gehouden door mijn stug volhouden, het volgende resultaat weten te behalen:

https://www.youtube.com/watch?v=qWcDirLT1As

Met een MPX5999 meet ik de keteldruk.
In een ADC maakt de PIC16F88 daar een rekengetallenlijn van, waarvan ik een deelgebied synchroniseer met de minimum- en maximum positie van de servo.
Als de druk tegen de maximumdruk aan komt draait een servo de benzinekraan steeds verder dicht.
Zakt de druk draait de servo de kraan weer open.

Mocht ik tegen grotere problemen aanlopen, kan ik het altijd nog vragen, ik denk dat voor mij een nieuw draadje openen nog niet nodig is.
Volgende stappen zijn het bedienen van de opstook-gaskraan, de tweede gasbrander, de tweede benzinebrander en het bekijken van zeker twee thermokoppels die moeten beoordelen of de vlam aan is.
Ik heb namelijk nog nergens kunnen vinden wat de golflengte van een vergaste benzine vlam is, kan dus ook geen passende IR transistor zoeken.
Een waxine vlam is geel en die geeft een prachtig contrast: licht/donker=aan/uit, mijn vlam zie je niet.
Vandaar de keuze voor thermokoppels.

groet van Harm
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 02 januari 2015, 16:19:26 pm
Citaat
Ik heb namelijk nog nergens kunnen vinden wat de golflengte van een vergaste benzine vlam is, kan dus ook geen passende IR transistor zoeken.

Zal maandag op het werk eens kijken of er in de documentatie van IR branddetectoren iets staat. Maar zo'n detector ga je niet in je bootje willen :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 04 januari 2015, 21:46:11 pm

Ik heb namelijk nog nergens kunnen vinden wat de golflengte van een vergaste benzine vlam is, kan dus ook geen passende IR transistor zoeken.

Foto van nemen van je vlam met een digitale camera, bij voorkeur in RAW formaat. Vervolgens in Photoshop importeren en kleurtemperatuur bepalen.
Heb ik pas nog gedaan om de kleur temperatuurwaarde te bepalen van halogeen spots (kwestie van de juiste mee te brengen uit de winkel)

mvg,

Patrick
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 07 januari 2015, 14:48:12 pm
Goede middag allen.
Is er iemand met ervaring met Proton ide en Pickit2
en dan ook nog in combinatie met een PIC16F883?

datablad: https://cdn-reichelt.de/documents/datenblatt/A200/PIC16F883_MIC.pdf

Ik heb de aansluitingen voor de pk2 bedacht op:(links pk2 rechts het ic)
1==1
2==20
3==19
4==28
5==27

Ik krijg wel wat in de pic, maar niet de juiste reactie.
Ik krijg nu ook een melding protected.
Daarom ben ik nog maar eens gaan kijken naar de "fuses" die je kan ingeven.
Nu blijken de f628 en de f88 heel anders te werken dan deze 883
CONFIG (datablad 210) ipv te schrijven:

DEVICE 16F88
CONFIG WDT_OFF, PWRTE_ON, LVP_Off, MCLR_OFF, HS_OSC

kan het met DECLARE
alleen dan krijg ik een melding dat er een #DEFINE
van is gemaakt.

Van het één in het ander kom ik nu bij
CONFIG1 en CONFIG2
Alleen wordt CONFIG 2 =%1111111111111111
niet geaccepteerd en wordt er vermeld: comma missing or command terminated incorrectly.


Wie heeft er voor mij een voorbeeld van de eerste regels van een programma en is mijn programmer juist aangesloten?

Ik krijg als ik PK2 laat zoeken wel de melding
device: pic16f883
en
PICkit2 found and connected
PIC Device Found
geregeld met kuren maar soms geeft het Programming Successful. (dus ga ik er van uit dat de verbinding in orde is)

grt Harm




Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 januari 2015, 16:55:19 pm
Harm,

vermits je PK2 de µC herkent, zal de aansluiting wel correct zijn.

Ik ben wel geen Proton kenner, maar in assembler zijn de config regels voor een PIC16F883 zo:

   __CONFIG    _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT

   __CONFIG    _CONFIG2, _WRT_OFF & _BOR21V

een beetje aanpassen naar je configuratie en proton Basic taal. Ik ken je hardware aansluitingen niet. Het voorbeeld hierboven gebruikt de interne oscillator van de µC!

Geert


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 07 januari 2015, 17:14:19 pm
beetje aanpassen naar je configuratie en proton Basic taal

Dank Geert voor de reactie.
Dat "aanpassen aan proton" is nu juist het probleem.
Ik ben ondertussen een stapje verder, deze pic gaat ook nog over zijn nek met "pullup" commando.
Ik heb nu dat ik kan schrijven wat ik wil en dat er in ieder geval naar de ingang wordt gekeken en afhankelijk daarvan een uitgang verschijnt.

Die settings is nu verder een kwestie van vele commando's proberen net zolang tot die geen error meer geeft.
met een "=" of met een ", " of met een "_". ik hoef me niet te vervelen.  :-\

Ik ontdek wel dat proton nauwelijks gebruikt wordt.
Er zijn voorbeelden genoeg maar in een taal die ik niet ken en dus ook niet kan vertalen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 januari 2015, 17:41:47 pm
heb ook pullup problemen gehad en het zo kunnen oplossen

Declare PortB_Pullups On
shit te snel geklikt

in proton boven aan kun je de fuses automatiche setten
knopke en daar staan dan alle fuses die de processor heeft en kun je aan en uit vinken 
ik heb nu compiler 3571 dus als je deze versie niet hebt upgraden vriend


gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 januari 2015, 23:24:53 pm
...Ik ontdek wel dat proton nauwelijks gebruikt wordt...

...En voor een licentie van £150 mag je wel support (forum - helpdesk) verwachten van de producent van die compiler...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 08 januari 2015, 09:09:43 am
proton ide is evolved naar Proton Amicus18

proton ide is dus eigenlijk het einde van het spoor
alle ontwikkeling gaat dus nu naar amicus 18

ik heb proton ide nog kunnen kopen maar of het nu nog te koop is heb ik geen idee van
ik heb eigenlijk twee versie's "eentje gratis en eentje betaald"maar het is wel makkelijk met twee usb sticks daar ik nu ook op de laptop boven aanpassingen kan doen terwijl ik normaal onder op mijn grote pc programmeer

er komen nog wel geregeld updates maar dat heeft dan meer te maken met de nieuwere micro chips processoren die uit komen dan update van de compiler zelf

ik ben verder wel tevreden over de compiler zelf en het crownhill forum is zo actief als de leden zelf maar dat is op elk forum zo
wat programmeren aan gaat zijn er nu zoveel nieuwe programmeer talen en ik voel me gemakkelijk en vertrouwd met basic wat ik een 30 jaar geleden heb geleerd .enig probleem is dat er nu processor gerelateerde instructies zijn bij gekomen die vroeger niet bestonden
ook de manier van programmeren is door de tijd veranderd .terwijl men vroeger goto en gosub gebruikte worden deze routines nu zo weinig mogelijk gebruikt.
dan het probleem met de microchips onderling heb ik ook reeds ervaren hoor Harm
porta.1 voor de ene en gpo.1 voor de andere

gr raf


 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 08 januari 2015, 11:33:03 am

porta.1 voor de ene en gpo.1 voor de andere


Dan heb ik gewoon pech dat niemand met een PIC16F883 werkt.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 08 januari 2015, 11:45:52 am
de grootste die ik gebruik is de 16F722
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 08 januari 2015, 12:20:01 pm

porta.1 voor de ene en gpo.1 voor de andere


Dan heb ik gewoon pech dat niemand met een PIC16F883 werkt.
Ik werk ermee (of toch met die reeks), maar niet met Proton.  MPLabX en C/assembler en daar is het gewoon PORTA.  De GPIO terminilogie komt eerder uit de ARM wereld (Arduino ed.)
De poort declaraties zouden echter geen probleem mogen zijn, althans niet in C.  Daar gebruik je #define om ze te remappen naar iets van jouw goesting, dat zal in Proton ook wel bestaan, niet?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 08 januari 2015, 12:30:56 pm
hoi patrick

het gebruik van de poort defenities blijkt af te hangen van welke processor je gebruikt in proton
'****************************************************************
'*  Name    : perronverlichting                            *
'*  Author  : [raf janssens]                                    *
'*                                                              *
'*  Date    : 26-12-2014                                         *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device 12F629               ; processor type 12F628
 
Xtal 4                     
 
Config INTRC_OSC_NOCLKOUT,_  ; Interne oscilator aan
       WDT_OFF,_             ; WatchDog Timer uit
       PWRTE_ON,_            ; Power-up Timer Enable aan
       MCLRE_ON,_            ; Externe Master Reset Enable aan
       BODEN_OFF,_           ; Brown Out Detectie Enable uit
     
       CP_ON                 ; Code Protection aan

All_Digital TRUE             ; Alle poorten digitaal
 
Symbol led3  = GPIO.2      ;
Symbol led4 = GPIO.4       ;
Symbol schakelaar =   GPIO.3          ;licht aan zetten
Symbol led1 = GPIO.0       ;
Symbol led2 = GPIO.1        ;
Symbol led5 = GPIO.5
 Dim waarde As Byte
Clear                        ; Wis alle ram geheugen
               
DelayMS 500                 
 
             
 
         ;543210            ; Hulpregel Poort poort_A
  GPIO = %000000            ; Zet poort_A laag
TRISIO = %111111          ; Poort_A als ingang

 
 start:
 While 1=1
 While schakelaar = 1 :Wend       ;als schakelaar uit staat doe niks
 For waarde =1 To 5
      Toggle led1
      DelayMS 50
      Next
        led1 = 1
       DelayMS 400
  For waarde =1 To 3
         Toggle led3
         DelayMS 50
         Next
         led3 = 1
        DelayMS 400
  For waarde =1 To 5
        Toggle led5
        DelayMS 50
        Next
          led5 = 1
         DelayMS 300
 For waarde =1 To 4
         Toggle led4
         DelayMS 50
         Next
         led4 = 1
        DelayMS 100
 For waarde =1 To 5
        Toggle led2
        DelayMS 50
        Next
        led2 = 1
         DelayMS 500
     ;zolang schakalaar is aan deze lus doorlopen   
  While schakelaar = 0
          For waarde =1 To 1
          Toggle led1
         Next
         led1 = 1
         DelayMS 1000
  For waarde =1 To 3
         Toggle led3     
         Next
         led3 = 1
         DelayMS 2000
  For waarde =1 To 4
         Toggle led5       
         Next
          led5 = 1     
         DelayMS 3000
 
  :Wend 
       
   ;leds terug uit zetten               
         led1 = 0
         DelayMS 100
         led2 = 0
         DelayMS 100
         led3 = 0
         DelayMS 100
         led4 = 0
         DelayMS 100
         led5 = 0
 Wend
 
dit programma laat de perron verlichting aan gaan en nu en dan flikkert een lamp hier en daar.ik dacht dat de verlichting aan de midden balk van het perron zou hangen maar nu blijkt dat ze dwars onder de overkapping hangt en het meer licht balken zijn dan ik dacht.
maar het werkt en dat is dus de zaak
maar zoals je kunt zien werkt deze processor dus met gpi0.X als poort definitie en niet portA.X
gr raf   
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 08 januari 2015, 19:54:49 pm
Klopt inderdaad de PIC12 reeks gebruikt GPIO (omdat er een maar handjevol IO pinnetjes aanwezig is vermoed ik).  PIC16/PIC18 gebruikt PORTA, PORTB, etc... omdat er veel meer pinnetjes zijn.
De ARM reeks (Atmel, STM, ...) gebruikt dan weer een andere variant GPIOA, GPIOB, ...

Ik dacht dat de oorspronkelijke vraag over een 16F883 ging?  Je code toont wel 12F628...  Da's wel een heel ander gamma van PIC processoren dan de 16F reeks...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 08 januari 2015, 20:09:06 pm
Harm heeft nu voor zijn stoombagger boot een 16f883 nodig
ik werk met de 16F628A voor de signalen  en de 12F629 voor in het schaduw station
ik heb nog een grotere processor die gaat dienen voor de station cheffen
omdat deze heel het station moeten gaan besturen

gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 08 januari 2015, 22:34:21 pm
...ik heb nog een grotere processor die gaat dienen voor de station cheffen...

Groter qua afmetingen is niet altijd groter qua intelligentie.  Voor nieuwe projecten gebruik ik tegenwoordig meestal 18F's.  20 MHz klok opfokken tot 48MHz en er ontstaat wat meer 'speeltijd'.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 08 januari 2015, 22:47:51 pm
Geen programmeerwerk maar bezig een poging aan het doen om mijn LocoNet speurtocht van de nodige documentatie te voorzien (zodat geïnteresseerden geen ellenlange zoektocht hoeven af te leggen om aan deftige documentatie te geraken).

(http://www.pctoytoy.be/2015/20150108_1.jpg)

Aangevuld met meetresultaten:

(http://www.pctoytoy.be/2015/20150108_2.jpg)

...publiceer ik ooit wel eens op mijn webstek...



Met de LocoNet decoder is het terug naar af.  Te kwistig omgesprongen met functies en procedures om een universele decoder te bouwen...  ...maar een 18F op 48MHz is geen quad-core Intel waar niemand meer zuinig is met processortijd...

Ondertussen veel geheimen ontrafeld en met de RedoFromScratch gaat het lukken (hoop ik  ::) )...


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 09 januari 2015, 10:16:19 am
de post met een plezant pakketje

(https://scontent-b-ams.xx.fbcdn.net/hphotos-xpa1/t31.0-8/10922575_874612199257597_2201943292632578040_o.jpg)
eindelijk licht in de zaak en hopelijk seffens de stepcraft aan het werk
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 09 januari 2015, 11:09:53 am
Geen programmeerwerk maar bezig een poging aan het doen om mijn LocoNet speurtocht van de nodige documentatie te voorzien (zodat geïnteresseerden geen ellenlange zoektocht hoeven af te leggen om aan deftige documentatie te geraken).

Mooi Peter ik blijf volgen. Daarnet is gekeken wat deze instructie inhoud, en hoe het zit met de Checksum.

Edit: ik dacht dat je er al een topic over gestart was, maar dat was met een andere µC ....
Zal toch handig zijn dat deze info later gemakkelijk terug te vinden zal zijn, dus ik wacht op je aanpassingen op je site.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 09 januari 2015, 11:20:02 am
Zal wel...kan nu al niet volgen of geraak er niet meer aan uit over al die controllers  ::) ::) ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 09 januari 2015, 12:41:33 pm
Met de LocoNet decoder is het terug naar af.  Te kwistig omgesprongen met functies en procedures om een universele decoder te bouwen...  ...maar een 18F op 48MHz is geen quad-core Intel waar niemand meer zuinig is met processortijd...

Ondertussen veel geheimen ontrafeld en met de RedoFromScratch gaat het lukken (hoop ik  ::) )...
Waarom effe geen 32-bitterke inschakelen?  De ARM Cortex M series zijn echt niet duur en hebben enorm veel power.  Je kan daarmee de 'universele' decoder bouwen en later varianten bouwen die maar 8-bit processoren gebruiken.  Wel opletten dat je niet teveel 32-bit variabelen/functies gaat gebruiken natuurlijk.
Als je C gebruikt is dat nog relatief eenvoudig op te vangen door met board includes te gaan werken, waar je je poort definities kan weg moffelen.
Bv een STM32F4 discovery board kost ong. 17€, heeft de debugger via USB al ingebakken, haalt 168MHz, heeft 1Mb ROM en 192Kb RAM, ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 januari 2015, 12:53:53 pm
@Geert: éénmaal een stukje klaar, plaats ik de volledige documentatie op mijn site en hier ergens een verwijzing er naar toe.

@Patrick: een LN decoder kan zelfs in een 16F628 op 20MHz.  In een 18F op 48MHz moet dat dan zeker lukken.  Alleen moet ik mijn code wat efficiënter schrijven.
Terug een ander type controller en andere manieren van werken/testen zie ik op dit moment niet echt zitten.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 09 januari 2015, 18:58:57 pm
Kan ik inkomen, 't was maar een wild ideetje moest je vastlopen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 10 januari 2015, 15:08:02 pm
Heb je nog van die leuke bordjes? Op school met de mbed nxp lpc1768 gewerkt, toffe dingen mee gedaan, maar dat vind ik toch wel al aan de prijzige kant (45€ dacht ik)... ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 10 januari 2015, 19:30:57 pm
Heb je nog van die leuke bordjes? Op school met de mbed nxp lpc1768 gewerkt, toffe dingen mee gedaan, maar dat vind ik toch wel al aan de prijzige kant (45€ dacht ik)... ;)
Bedoel je die discovery?  Heb er gisteren nog eentje besteld, voor 16.77€ kan je niet sukkelen hé.  Naast die deze heb ik nog een Core407V, zelfde micro controller als de discovery, maar met minder componenten, is maar half zo groot maar is wel iets duurder (20€).  Een Open407V-D, een expansie board voor de discovery, komt zonder CPU maar met een hoop periferie.

En in de PIC reeks heb ik er ook 2: QL200 (was redelijk duur, maar kan nagenoeg alle PIC16 aan).  En een PICDEM PIC18 Explorer board.

Nog een tweetal Raspberry Pi's...

Deze bordjes zijn superhandig om een nieuw ontwerp te maken.  Hiermee kan je eerst de software ontwikkelen, kijken of het allemaal in de chip past en pas daarna je echte schakeling gaan ontwerpen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 januari 2015, 19:37:34 pm
...QL200...
...PICDEM PIC18 Explorer board...

Allemaal vrij duur.  Ik gebruik breadboardjes van de chinaman.  Gezien de prijs van die bordjes blijven schakelingen hier soms maanden op het bordje.  Een anderen schakeling?  Een 'vrij' breadboardje (inclusief voeding) uit de schuif nemen...

...Nog een tweetal Raspberry Pi's...

Idem hier, maar die liggen stof te vangen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 10 januari 2015, 20:30:59 pm
Goede avond heren.
Hier vordert het tergend langzaam.
Twee stapjes vooruit : één achteruit
(maar vaker 2 vooruit en 2 achteruit.)

Ik heb een heleboel werkend gekregen door de ASM code uit een voorbeeld nu in de proton te gebruiken.
De pic luistert eindelijk naar me.
Onlangs zag ik dat ik met een commando "sluiten" de servo linksom zag gaan draaien.
Nu is rechtsom algemener wanneer je wat dicht draait, dus formule regel omgezet en...............................
Helemaal foute aansturing.

Zelfde omgezette formule in een excelblad herschreven: werkt perfect.
De eerder in proton vereenvoudigde formule weer uitgerafeld zodat ik per berekening kon volgen wat voor antwoord er uit kwam.

Nu blijkt dat die PIC niet met negatieve getallen kan werken.  :-\ :-\ :-\

Het is hobby dus ik moet het leuk blijven vinden. ::)
Gelukkig weer één stapje vooruit (ik weet de oorzaak van de foute berekeningen).



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 januari 2015, 20:46:26 pm
...Twee stapjes vooruit : één achteruit...

Processie van Echternach.  Heel goed gekend bij het werken met controllerkes.

Nu blijkt dat die PIC niet met negatieve getallen kan werken.  :-\ :-\ :-\

Een negatief getal is aan processoren niet besteed.  Een processor rekent positief.  Negatief is tweede complement (http://nl.wikipedia.org/wiki/Two%27s_complement).
Standaard in de meeste processortalen op 8 bits is 255 = -1 (2^8 - 1).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 10 januari 2015, 21:09:55 pm
het programma loopt zoals het moet

er moet nog wat aan gewerkt worden want de deuren gaan nu nog te snel open maar dat is minimaal aanpassen
of youtube filmpjes hier draaien ???? we zien het wel
https://www.youtube.com/watch?v=ePvbdYvazsw&feature=youtu.be

direct in het forum linken gaat hier dus niet

eventjes wat uitleg
porta.0 is het lassen wat in de loods gebeurt
porta.1 is de buiten verlichting die mee aan gaat met de straat verlichting
porta.2 is een grote schijnwerper die boven de deuren hangt en die aan gaat voor de deuren open gaan en uitgaat een tijdje nadat de deuren dicht zijn.
op de scoop zie je de twee impulsen die de servo's van de deuren sturen
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 10 januari 2015, 22:28:27 pm
Zal toch handig zijn dat deze info later gemakkelijk terug te vinden zal zijn, dus ik wacht op je aanpassingen op je site.

Vandaag de eerste twee pagina's achtergrond informatie gemaakt (nog niet op mijn site aanwezig).  Voor ik aan de code begin, denk ik nog een vijftal pagina's vol te kunnen schrijven.  Maar voor ik iets publiceer toch maar een toelating aan Digitrax vragen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 11 januari 2015, 10:28:58 am
Heb je nog van die leuke bordjes? Op school met de mbed nxp lpc1768 gewerkt, toffe dingen mee gedaan, maar dat vind ik toch wel al aan de prijzige kant (45€ dacht ik)... ;)
Bedoel je die discovery?
Op school met dit beestje gewerkt: http://developer.mbed.org/platforms/mbed-LPC1768/
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 11 januari 2015, 11:31:09 am

Standaard in de meeste processortalen op 8 bits is 255 = -1 (2^8 - 1).

Dat zegt me niets.
Maar bedankt voor het bevestigen dat een pic niets kan met negatieve getallen.
Ik heb 35 jaar geleden met http://www.heimcomputer.de/english/comp/microprofessor.html op school gespeeld, verder nooit wat met processoren gedaan.

Vanmorgen vroeg de formuleregel uitgeplozen tot losse elementen, daarna viel ineens het kwartje en zag ik dat als ik twee uitkomsten voor en na een "+" moest wisselen en de "+"  moest vervangen door een  "-" . Verder wat creatiever met ((  en ))  geweest.
Nu werkt het.

Gelukkig weer een stapje voorwaarts.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 11 januari 2015, 12:07:28 pm
Harm: https://www.youtube.com/watch?v=vfY7bN_3VKw (bv..., met 1's complement is gelijkaardig)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 11 januari 2015, 13:09:43 pm
Een Pic werkt niet standaard met negatieve getallen, maar normaliter moet je dat ofwel zelf als programmeur doen door in 2-complement te werken (wat PeterC bedoelt met 255 = -1) ofwel doet de compiler dat voor jou als je in een hogere programmeertaal werkt.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 januari 2015, 14:00:57 pm
harm gij gelukzak dat je bent
ik ben hier mee begonnen

(http://upload.wikimedia.org/wikipedia/commons/1/19/Zilog_Z80.jpg)

dit was de pio die we toen gebruikt hebben
(http://www.iowa-industrial.com/South-Iowa-/8255A-5-programmable-peripheral-interface-pio-amd-image-No.jpg)
daardoor konden we met een 10 tal knopjes de z80 programmeren
van de  1K 1 bit ringkern geheugens vind ik geen afbeeldingen meer
nadien is sinclaire uitgekomen met de Z 80 en nadien de ZX81 waar je tot 32 K geheugen kon op klikken
de verbinding naar het tv toestel was met een witzwart UHF /VHF moduletje uit een oude tv

(http://madskool.files.wordpress.com/2013/09/zx81.jpg)

ach dat waren pas tijden dat je met een soldeerbout je eigen computer in elkaar kon branden

nostalgie ten top

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 11 januari 2015, 14:21:43 pm
De ZX81, mijn eerste computer!  :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 11 januari 2015, 15:30:34 pm
van de  1K 1 bit ringkern geheugens vind ik geen afbeeldingen meer

Deze die je zoekt?
http://en.wikipedia.org/wiki/Magnetic-core_memory#mediaviewer/File:KL_CoreMemory.jpg (http://en.wikipedia.org/wiki/Magnetic-core_memory#mediaviewer/File:KL_CoreMemory.jpg)

Had ik geweten dat er hier zo'n oude knarren (*) zouden komen had ik mijn pdp 11/73 en Sparcstation niet naar het museum gedaan. Ben er zeker van dat er hier iemand die voor zijn treinen zou gebruikt hebben. :D

(*) niet verkeerd opvatten hé.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Bolje op 11 januari 2015, 16:09:03 pm
ZX81 was ook mijn eerste 'computer'

@ Raf, ik had een geheugen uitbreidingsmodule van 64k. Je kon meer dan 32k uitbreiden ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 11 januari 2015, 18:23:34 pm
Voor iemand die nu geboren wordt of zelf van mijn generatie is zo'n ringkern geheugen toch echt een staaltje vernuft... Gigantisch groot en je kunt er nog geen mp3'tje op kwijt  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 11 januari 2015, 18:33:14 pm
Dat is maar 1 raam uit een "core". Die werden boven elkaar gestapeld om meer geheugen te hebben. Maar wat het meest fantastische eraan was is dat als nu de stroom uitviel dan bleef alles wat in het geheugen was gewoon bestaan: data, programma, status, alles. Als er terug stroom was ging de computer gewoon verder alsof er niets gebeurd was. Met de black-outs die eraan komen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 januari 2015, 18:49:12 pm
ja Havoc maar die van mij stonden in een groen plastieke raampje
zo een raampje was 1 bit dus voor 1 byte had je der 8 nodig en dan had je dus ongeveer 1 K op 8 bit
dus voor 10 k had je een 80 tal van deze nodig
heel de living tafel stond vol met deze kadertjes LOL
jongens wat een tijd toen en wat een hoofdbrekens maar ook plezier hebben we toen gehad
als we dan iets gemaakt hadden wat wilde werken direct op zondag namiddag naar neeroeteren naar de club en laten zien wat we hadden gepresteerd
en natuurlijk wild het daar voor geen meter werken en was je om kapot te vallen
maar echt dat was een tijd en daar denk ik met plezier aan terug

de sinclair z80 was reeds ver gevorderd want die had een toetsenbord
(http://upload.wikimedia.org/wikipedia/commons/thumb/2/24/ZX80.jpg/280px-ZX80.jpg)
nadien is de zx81 uitgekomen en dan de spectrum die had kleur en een degelijk toetsenbord
3.25 Mhz processor aanboort net zoals de zx 81 deze is uitgekomen rond 1981 en koste de helft van de z80
mijn processor was een militaire versie (veel soldeer en knipwerk)en was een 8 Mhz processor dus ietsje sneller en ja toen ook al

hier de spectrum
(http://upload.wikimedia.org/wikipedia/commons/thumb/a/af/ZX_Spectrum_.jpg/250px-ZX_Spectrum_.jpg)
deze kon reeds werken met een soort van disketjes waarin een tape zat zonder einde (micro drive)zoals een 8 track van vroeger
latere versies van de spectrum konden tot 128 k geheugen aan en is daarna door amstrad opgekocht
ja jongens diegene die dit nog mee gemaakt hebben zijn net als ik oud aan het worden LOL

gr raf en bedankt om de heerlijke herinneringen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 11 januari 2015, 19:13:24 pm
Maar wat het meest fantastische eraan was is dat als nu de stroom uitviel dan bleef alles wat in het geheugen was gewoon bestaan:
Behalve als zo'n stroomuitval samenviel met een leesactie. Bij het lezen van zo'n magnetische ring ging de informatie van die ring verloren. Die moest dus direct daarna weer teruggeschreven worden.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 januari 2015, 19:42:18 pm
ha klaas ook meer dan 50 jaar hahaha inderdaad die rode draad die je door het frame ziet lopen was de refreche draad

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 11 januari 2015, 20:06:16 pm
Heb je nog van die leuke bordjes? Op school met de mbed nxp lpc1768 gewerkt, toffe dingen mee gedaan, maar dat vind ik toch wel al aan de prijzige kant (45€ dacht ik)... ;)
Bedoel je die discovery?
Op school met dit beestje gewerkt: http://developer.mbed.org/platforms/mbed-LPC1768/
Die 'mbed's vindt je tegenwoordig meer en meer en zoals Peter al aangaf via de Chinees.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 11 januari 2015, 20:42:07 pm
ha klaas ook meer dan 50 jaar hahaha inderdaad die rode draad die je door het frame ziet lopen was de refreche draad

gr raf

Is dat niet "sense" die gekoppeld is aan de readamp?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 januari 2015, 21:16:25 pm
er was een blauwe ,rode en witte draad dacht ik op mijn caderkes
maar schiet me der niet op dood want het is een eeuw geleden dat ik daar mee gewerkt heb

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 11 januari 2015, 22:22:55 pm
Even gezocht, maar vind toch niet direct een kloon van de mbed uc
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 12 januari 2015, 12:41:39 pm
Even gezocht, maar vind toch niet direct een kloon van de mbed uc
En die ga je ook niet zo gauw vinden.  Dat zijn meestal al duurdere processoren (relatief) omdat ze gebaseerd zijn rond de duurdere ARM Cortex M0-M3 processoren van LXP.  Tegenwoordig heb je al wel een Arduino Due die gebruik maakt van een Atmel M3 en die kan je wel al vinden voor net geen 14€. Doe er nog een paar euro bij en je komt aan pakweg 17€ voor STM32F4 discovery (STM Cortex M4).  Op dat beestje heb ik bv. een 2.8" LCD'tje hangen en dat levert netjes 70 frames per seconde.  Ik heb al gedacht om diezelfde STM processor rechtstreeks in m'n schakelingen te gebruiken, maar blijkt dan dat m'n print duurder uitkomt dan een sandwichke met de discovery...
Dus nu ontwikkel ik zelf m'n modules in mbed/Arduino stijl rond die STM32F4 discovery.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 13 januari 2015, 20:45:58 pm
Even bijpraten.

PIC doet het aardig.

geef commando brander 1 aan------------------branders 1
gaskraan opent----------------------------------G1
je kan aansteken
gaskraan gaat vol open
keramiekbed en vergasserpijp worden warm
benzinekraan gaat beetje open-----------------B1
benzine stroomt toe en gaat branden
benzine kraan vol open
gas kan dicht
druk loopt op
benzinebrander regelt terug naar waakvlam grootte

Kies je voor een 2de brander, dan ontsteekt die op dezelfde manier.
------------branders 2 ------------G2 en B2

video:  https://www.youtube.com/watch?v=GbxSZms25-k&feature=youtu.be

Branderbewakingen nog invoegen en dan als het mooi weer is maar eens gaan proefstoken om te kijken of de verzonnen afstanden en waardes kloppen.
Zo niet, dan zien dit zo te veranderen dat het kan werken.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 13 januari 2015, 21:15:34 pm
Je maakt dus je eigen breakout boards met zo'n krachtige processor op? En met wat programmeer je dat, welke compiler/programmer heb je daarvoor nodig?

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 13 januari 2015, 21:41:07 pm
Je maakt dus je eigen breakout boards met zo'n krachtige processor op? En met wat programmeer je dat, welke compiler/programmer heb je daarvoor nodig?
Yep inderdaad.  De boards rond een PIC via de ICSP; deze met ARM processor JTAG/SWD.
Het leuke van de STM32F4 discovery is dat deze JTAG via USB ondersteunt, naast de zware M4 processor zit er nog een kleinere M1 die zorgt voor de JTAG en USB ondersteuning.  Bord gewoon aansluiten op de USB van de computer, heeft dan power en debugger is meteen gekoppeld met de IDE.
Programmatie van de PICs gebeurt met MPLabX, de ARMs met Coocox.  Mijn C-bibliotheken zijn bijna allemaal uitwisselbaar tussen de 2 architecturen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 13 januari 2015, 21:45:59 pm
Ga dat onthouden voor als we eens wat meer rekenkracht nodig hebben...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 13 januari 2015, 22:07:12 pm
ha Harm ik heb de foto gezien en nu heb je tenminste ook nog een uitlezing van hoe de gaskranen staan

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 14 januari 2015, 08:50:48 am
Raf , het was alleen voor de film, ik kan als ik gewoon de servo benoem, met de getalswaarde als stand er achter, nog beschikken over 1900 program words voor de thermokoppels en voor de waterbewaking.
Nu met die balkjes is de pic vol en dat schiet niet op.

Mogelijk dat in ASM eenvoudiger geprogrammeerd kan worden.
Ik zal eens rondkijken  want die taal ken ik geheel niet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 14 januari 2015, 09:31:03 am
Ja Harm zo doe ik het ook
als ik een servo voor een deur of wissel programmeer dan gebruik ik steeds het programma met een beetje meer software voor de manuele knopjes en de lcd .dan kan ik de wissel/deur zo afstellen en dan de waarden die ik kan aflezen worden dan in de pic geprogrammeerd die er werkelijk in komt zitten en dan komt de display te vervallen
maar dan weet je ten minsten toch waar je mee bezig bent

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 14 januari 2015, 09:49:01 am
Ik hoef gelukkig geen andere taal te leren, die proton ide maakt er zelf asm van (zag ik tussen alle files) , maar dat geeft wel te denken...........
pic geheugen is mogelijk niet eens voldoende om alles in één pic te schrijven.
Heb ik daarvoor zoveel in en uitgangen gekozen?   :-\
Aan de andere kant: ik kan nu het display gewoon aangesloten laten zonder ruzie te krijgen met pootjes die ook als in en uitgangen gebruikt worden, dus is het niet helemaal zinloos.  ;D

Op naar het volgende hoofdstuk, tijd zat want ik hoef niet eerst aan de studie.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 14 januari 2015, 17:21:37 pm
Ik ben recentelijk "overgestapt" op FPGA. (ik moet zo minstens één keer per jaar, een serieuze nieuwe uitdaging hebben ...)
"voor de lol" eens een Arduino aan't synthesizen ... Dat wordt dan meteen een "Arduino on steroids", zal ik wel op 200 Mhz ofzo kunnen laten draaien,
hopelijk genoeg om dat ding VGA signalen te kunnen laten genereren, al was het maar 640x480 ...
Een mens moet toch wat hé :-)

Ben er ondertussen ook achter gekomen dat ik blijkbaar een verslaving heb voor "diverse DEV boards" ...
Van de week alles eens bijeen gezocht, met het idee om voor elk bordje een behuizing te gaan 3D printen, nou, ik heb hier inmiddels bijna 30 verschillende borden, met allerlei processoren op enzo !
Alle mogelijke vormen van Arduino (Mega/Uno/Leonardo/mini pro), RaspBerry Pi, GoosBerry, mini 2440 (friendlyarm), mini 6140, PCDuino, Galileo, Edison, IoIo, Spartan 3 starterkit (Waveshare), Nexys2, Atlys (Digilent FPGA), Elektor FPGA bordje,
86Duino, Papilio, STM32, Beaglebone Black, CubieBoard3 enz ... enz ...

Recentelijk ook de ESP8266 spotgoedkope wifi modules ontdekt ... man man, ondertussen bouw ik die dingen letterlijk overal in ! een echte aanrader :-)
Zo heeft elke spot in't plafond hier (bijna 200 door heel het huis), z'n eigen IP adres, lol. (samen met een 9W RGB led, Arduino mini en 2 servos)
"Sferen" zijn instelbaar via een HTML5 app (werkt perfect op een iPad), en nu nog bezig met een "muziekplugin", zodat we het hele huis in "disco-modus" kunnen zetten :-)

groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 15 januari 2015, 16:38:28 pm
en dan op je hoede zijn voor hackers die je huis komen verlichten ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 16 januari 2015, 08:10:16 am
Dani :-)

Daar heb ik gelukkig zelf bij stilgestaan.
Zal wel meevallen, buiten de WPA2+AES encryptie op het wifi gedeelte, zit er ook nog 1024-bit encryptie
in m'n eigen communicatie-layer ...

groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 16 januari 2015, 14:11:37 pm
ik had van jou niks minder verwacht, Kris !!!
Maar ik zag onlangs op tv een interessante reportage over  "slimme weegschalen",  WiFi Baby-videofoons,  smart domotica en dergelijke, en daar trokken ze het wel heel ver ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 19 januari 2015, 17:36:43 pm
Tja, als je in "den IT" werkt, dan is security er met de pap-lepel ingegeven hé :-)

Enne, Dani, bedankt voor de complimenten, maar als ik me goed herinner ben jij ook zo'n "self-educated/selfmade" man hé.
ik meen me te herinneren dat jij nog met Arduinos begon, en als ik zie wat jij tegenwoordig ook allemaal uit je mouw schudt, dat is ook iets om best trots op te zijn !
Nuja, anderzijds is electronica & informatica voor vele mensen één pot nat. Die begrijpen niet dat ik enerzijds werkzaam ben in "den IT", maar anderzijds die electronica wel allemaal zelf heb geleerd in m'n vrije tijd,
ze zien er het verschil niet tussen, en da's jammer ...

Mezelf ondertussen weer eens laten gaan, nog een Arduino model ontdekt dat in m'n "collectie" ontbrak, de Arduino Due (niet de Duemilanove).
Lijkt op't eerste zicht op een Arduino Mega, maar dan eentje met een ARM Cortex-M3 processor op (is toch weer eens wat anders dan die "gewone" ARM V7 & A20 modelletjes die ze tegenwoordig bijna overal in pleuren),
moet volgens mij wel lukken om met dat ding pure VGA signalen op te wekken, 640x480,16bits lijkt me voldoende om een 5" schermpje aan te sturen :-)

Ondertussen de nostalgische toer opgegaan, bezig met MOD files en SID files ...
En besloten om zelf een GameBoy te gaan bouwen (je weet wel, één van die eerste nintendo handhelds, met zwart/wit scherm)
We willen wel "modern" doen, dus een kleurenschermpje erin, en dan NES Roms erop :-)

Tja, met dat sukkelen met de gezondheid, blijft er weinig moed & energie over voor de modelspoor baan, dan maar 3D printen en af en toe wat solderen / programmeren,
zolang ik maar "stil" kan zitten op een stoel of in m'n bed kan liggen met de macbook enzo, kan ik me toch nog wat bezig houden ...


groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 20 januari 2015, 12:42:39 pm
Pas op met die VGA signalen...  Je processor kan wel genoeg beelden doorsturen naar de LCD, maar die moeten ergens vandaan komen...  Je processor is bv. niet krachtig genoeg om mpg te gaan decomprimeren, dan heb je extra hardware nodig nodig.  Als je de goedkope LCD uit China gebruikt (typisch met een ILI of SSD driver), moet je de signalen in RAW formaat (16 of 18-bit RGB) gaan doorgeven.  Als die omzetting niet op voorhand gebeurd is, schiet je processor te kort (zeker met mpg).

Die ARM Cortex processoren zijn inderdaad leuke beestjes, heb er hier een hele resem van liggen...

Let op met 3D printen en een kramakele gezondheid!  Die dingen genereren een massa aan fijn stof, met een adequate verluchting/ventilatie niet echt een probleem, maar een verwittigd... ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 21 januari 2015, 09:56:39 am
bedankt ook voor 't kompliment kris.  Ja inderdaad ik heb ook veel "zelf geleerd", al had ik wel een klein beetje een basis door mijn studie :-)
En als je een passie hebt voor iets, dan steek je daar wat tijd en moeite in, en dan ga je daar voor hee.

Hoewel mijn grootste passie toch nog mijn oldtimers en moto's zijn,  steek ik ook graag tijd in de treinen, vooral het bouwgedeelte van de baan.
Een mens moet toch iets doen om lichaam en geest wakker te houden, en ik zie mezelf nog niet zo elke dag na het werk pintjes gaan pakken, of in het weekend als een couch potato in de zetel liggen de hele dag.   dus ja, we doen ons best.


Een eigen game boy op een Due ?   hmm, als je spreekt van een uitdaging,...   lekker !
Als je nog voorbeelden van MOD files wil, ik heb er nog wel enkele over gehouden van indertijd op mijn PC-AT met 80286 processor EN  80287 coprocessor :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 22 januari 2015, 11:27:18 am
We hebben hier airco afgekoppeld, printers staan in een gesloten behuizing (enerzijds om "warmte" vast te houden).
Afzuiging zit op airco afzuiging aangesloten dus, en gaat rechtstreeks naar buiten. (Maar toch bedankt voor de verwittiging)

Die NES (gameboy) heeft "maar" 256 x 240 als resolutie met 48 kleuren (6 bits is genoeg dus), makkelijk zat dus om de nodige "snelheid" te halen voor gameboy emulatie :-) Die andere 16-bit 5" display, daar komt een soort GUI op (met touchscreen) om het domotica systeem te bedienen, veel tekst en wat icoontjes enzo, en héél af en toe eens een fotootje van de IP cameras. Niks tijds-kritisch dus, snelheid is ook hoog genoeg voor mijn "doel" dus :-)

MOD-files, haha, heb er nog een 2000-tal teruggevonden op één of andere oude backup op een CDR !
Verder nog een fijne website gevonden, die meer dan 400.000 MOD files online heeft staan. Blijkbaar is dit nog een vrij levendige community,
want je kan er ook de recentste "hits" in MOD-formaat terugvinden ...

Met die Papilio (FPGA) kan ik een Arduino simuleren (maar dan "on steroids", lol, Arduino op 100 Mhz met 8 MB Ram)
daar haal ik op 640x480, 12-bits color (4096 kleuren) toch makkelijk 32 FPS. (maar idd, geen mpg, data voorgekauwd op PC naar bitstream, die dan op een SD staat, arduino code leest die bitstream rechtstreeks naar het RAM geheugen waar de display buffer gemapt zit)

Leuk spul allemaal :-) Misschien moet ik maar stoppen met die stoomtrein-club, en in een electronica-club gaan ofzo ...
(maarja, rond het Antwerpse ? wil geen grote afstanden afleggen ... Zit er eentje in Sint-Katelijne-Waver, 1x per maand vergadering, is zelfs al te ver voor mij)
Gelukkig is er nog CircuitsOnline, maarja, IRL zou toch leuker zijn ...


groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: minitreintje op 23 januari 2015, 07:35:21 am
@Kris,

Ik zou eens dan kijken naar 'Hackerspace'.

groeten Dylan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 januari 2015, 18:51:00 pm
Speeltijd:

(http://www.pctoytoy.be/2015/20150123_1.jpg)

Full RGB led (= 24 bits kleuren) aan te sturen met slechts één processorpoortje.  Meerdere leds aansturen?  Eenvoudig weg in cascade zetten (de ene zijn ingang op de voorgaande zijn uitgang).
De processor om die leds aan te sturen moet wel van wanten weten want het zijn heel korte signaaltijden.

Met een beetje geluk spaar ik op die manier voor mijn synoptisch bord een ledmultiplexer uit.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 januari 2015, 20:53:21 pm
Spelen is altijd plezant.

2 dergelijke ledjes aangesloten, wat code geschreven en gaan meten.  Met de vlug-vlug geschreven code zou het 900µs duren om 16 ledjes aan te sturen.  Na elk LocoNet commando is er minimum 1200µs (20*60µs) 'speeltijd'.  Ik denk dat die ledmultiplexer vlug uit mijn schakeling gaat verdwijnen.

Dit weekend nog eens bij de chinaman langsgaan want ik had er maar 5 besteld om te proberen...

Wanneer de leds op volle lichtsterkte branden, is het onmogelijk om rechtstreeks in het licht te kijken (enorme lichtopbrengst).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 23 januari 2015, 21:38:02 pm
Dat is één manier voor digitale leds...
Ik gebruik een 16-kanaals PWM led-driver die je met I²C aanstuurt voor analoge leds.
Die ledjes lijken heel sterk op hun analoge broertjes (SMD 5050) en die zijn inderdaad héél krachtig: 3x 20mA; pakweg 400mcd per led.  Ben op dit ogenblik een controller aan het bouwen die de trap verlichting aanstuurt.  Als het moet geef ik elke trede een apart kleurtje...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 23 januari 2015, 23:12:48 pm
...Ik gebruik een 16-kanaals PWM led-driver die je met I²C aanstuurt voor analoge leds...

Toevallig een nummertje daarvan?



Ik heb eerst zitten experimenteren met een MAX7219 (http://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf).  Die kan 64 individuele leds aansturen.  Helderheid regelbaar via PWM.  Wel algemene helderheid; dus niet per individuele led.  Stuur je daar RGB leds mee aan ben je beperkt tot 64:3 = 21 RGB leds.  Om het programmeren wat eenvoudiger te maken wordt dat dan 16 RGB leds (2 RGB leds per 8 bits - 2 bits/byte gaan 'verloren').
Probleem met die MAX7219 is dat je beperkt bent tot 'alles-of-niets' RGB, maw de hoofdkleuren:

RGB
000 -> led uit
001 -> blauw
010 -> groen
011 -> cyaan
100 -> rood
101 -> magenta
110 -> geel
111 -> wit

Tussenliggende kleuren zijn niet mogelijk: een appel-blauw-sigare-grijs kleurtje kan je op die manier niet bereiken.  True RGB leds (3*8 bits per led) laten veel meer kleuren toe.  Maar dan moet je wel per RGB kanaal iedere led via PWM kunnen aansturen.  Voor 16 leds wordt dat dan wel al een kanjer van een processor (via een matrix wordt het dan een kanjer van een programma).
Die WS2812 (http://www.adafruit.com/datasheets/WS2812.pdf) (WS2811 is de chip - WS2812 is de 5050 RGB-led met de ingebakken WS2811 chip (http://propaneandelectrons.com/blog/the-difference-between-ws2811-and-ws2812)) heeft als voordeel dat die slechts één draadje tussen de verschillende leds nodig heeft (in feite drie draadjes: 5V - massa en seriëel signaal).  Met een multiplexer IC heb ik in mijn geval veel meer draadjes nodig voor de weergave op een synoptisch bord.


Ik neem er de eerste de beste uit als voorbeeld (http://www.benl.ebay.be/itm/1M-60Pixel-WS2812B-Led-strip-light-RGB-Individually-Addressable-No-waterproof-5V-/111378698315?pt=US_String_Lights_Fairy_Lights&hash=item19eeb0104b).  Voor die prijs ga ik niet zitten sukkelen...  Als ik wat verder zoek, zal die prijs alleen maar zakken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 24 januari 2015, 15:24:46 pm
PCA9685
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 24 januari 2015, 18:07:35 pm
Ik gebruik die WS2811 (en de WS2812(B)) al enige jaren naar tevredenheid.
Er zijn zelfs gewone 5mm RGB LEDs, waar zo'n chip in de LED zelf mee ingebouwd zit ! (heb die "her en der" al in schakelingen zitten) - net zoals die SMD varianten dus ...
Als je "enorme" voorraden van vanalles en nogwat aanlegt, zorg dan dat je goed gaat documenteren welke gewone en welke "digitale" RGB LEDs zijn,
want ze hebben allebei 4 pootjes. (de gewone voor +, R,G & B, die "digitale" voor +,GND,Data In, en Data Out (cascading naar volgende LED)

Misschien ook eens kijken naar de LPD8806, doet hetzelfde als die WS2811, maar aansturing is iets minder tijds-kritisch.
<offtopic>
Ik heb een strip met 250 van die LEDs met LPD8806 rond m'n projectie-scherm hangen, voor m'n zelfbouw ambilight :-)
(net iets "geavanceerder" dan de Ambilight van Philips, filmpje (toe niet niet gefinetuned, gewoon de "allereerste beelden") http://youtu.be/1Ld5XBeL8n4 (http://youtu.be/1Ld5XBeL8n4)  en werkt gewoon met HMDI in, dus niet zoals die boblights enzo, dat het ding alleen werkt op het beeld van een PC ...) - Als je het hele filmpje niet bekijkt, kijk dan zeker even naar vanaf 04:00, je ziet vooral goed hoe netjes de ambilight die groene streep van die "radar" mooi rond het scherm weet te brengen)
Het filmpje is trouwens gemaakt met een oude Samsung Galaxy TAB tablet, in't echt ziet het er allemaal veel beter uit ...
</offtopic>


En inderdaad mooi speelgoed :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 24 januari 2015, 18:28:11 pm
Het werkt voor jou allicht perfect, maar heb hier de philips Ambilight wel niet zo snel ingesteld...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 25 januari 2015, 18:58:04 pm
PCA9685

Johan, bedankt voor de info.  Bij nader inzien stuurt die 16 leds met PWM aan.  Ik heb 16 RGB leds nodig (= 48 leds).  MAX7219 stuurt 64 leds aan.  PWM voor alle 64 leds samen.

...Misschien ook eens kijken naar de LPD8806, doet hetzelfde als die WS2811, maar aansturing is iets minder tijds-kritisch...

Een vlugge blik en ik zie al heel wat meer lijnen om aan te sturen.  Moet ik even in detail bekijken (processorlijnen versus kostprijs led).




Nog steeds bezig met mijn LocoNet Start/Stop schakeling.  Het ontwerp heeft de laatste praktische testen doorstaan (op mijn testbaantje - met Intellibox en Mä 6021) en nu voel ik mij net een schrijver: voor iedere drie regels code staan bij manier van spreken 25 regels uitleg.  Een voorbereiding voor als Alois (http://nl.wikipedia.org/wiki/Alois_Alzheimer) toeslaat...

Binnenkort meer op mijn vernieuwde JAL website (eerst nog wat worstelen met Joomla!).

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 25 januari 2015, 19:40:50 pm
Je kan 3 stuks pca9585 gebruiken en synchroniseren. Eentje voor rood, eentje voor blauw en eentje voor groen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 25 januari 2015, 21:19:55 pm
Je kan 3 stuks pca9585 gebruiken en synchroniseren. Eentje voor rood, eentje voor blauw en eentje voor groen.
No thanks...  3 extra chips...  KIS: keep it simple!  En met de huidige generatie chips/toebehoren moet dat lukken.  Alleen moet ik meer software schrijven...

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 26 januari 2015, 01:00:38 am
No thanks...  3 extra chips...  KIS: keep it simple! 

Raar ... probeer ik ook - maar voor een huidig project wil ik 4 µC's doen samenwerken  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 26 januari 2015, 22:08:45 pm
De PCA9685 is deze die ik gebruik (de PCA9585 ken ik niet) en voor 16 kanalen RGB heb je inderdaad 3 van die beestjes (16 x3, eentje voor elke R, G en B in de  RGB) nodig.  Deze analoge versie (1.5€/m) komt een pak goedkoper uit dan de versie met digitale leds (10€/m).  Maar je kan met de analoge versie heel moeilijk elk ledje apart gaan aansturen (tenzij je heel veel PWM'kes gaat inschakelen ;D).  Beide toepassingen zijn niet te vergelijken; kijk maar naar de AmbiLight toepassing van sn00zerman, knap gedaan trouwens!

Peter let op met MAX7219, deze doet niet wat ik voor ogen heb: elk kanaal met een aparte PWM.  Deze is een display driver voor 8 7-seg. displays + dot (dus 8x 8).  Via wat foefelen kan jer inderdaad 64 kanalen met aansturen, maar gemultiplexed (!)

M'n prototype voor de trap controller is nu klaar, nog effe wachten op de LDR's om het helemaal af te werken.  Werkt op 2 modes, normale via 2 PIR detectoren en 'emergency'.  De emergency is nodig omdat de PIR niet voor de volle 100% betrouwbaar is soms een passerend persoon 'mist'.  De emergency werkt met een accelerometer die detecteert wanneer iemand z'n voet op een trede plaatst.  Heb me gisteren suf gezocht waarom die accelerometer altijd maar direct het licht deed aanspringen; had 'm ingesteld op 0.1g en floepte meteen het licht aan, ook zonder schok van 0.1g.  Deze slimme hier was effe vergeten dat we hier in België ook nog zwaartekracht hebben, dus één van de assen stond permanent op 1g, vandaar dat het licht meteen aanfloepte.  Kieken :-[
Enfin, ook nog een veiligheid ingebouwd voor het geval dat de PIRs het noorden kwijtraken: na 30 seconden 'stilte' op de PIRs gaat het licht zowiezo uit.  En met 'uit' bedoel ik de PWMs op een waarde tussen de 0 en 10% (ik test met 0.1%) en dat geeft nog redelijk wat licht.
Met de PWMs op full power kom ik op 1.2W per meter ledstrip; na testen blijkt 30% al meer dan voeldoende te zijn.

Nu wachten op een echte trap waar ik 't kan inbouwen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 26 januari 2015, 22:30:55 pm
De PCA9685 is deze die ik gebruik (de PCA9585 ken ik niet)

Je hebt gelijk, typfoutje, moet de PCA9685 zijn.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 26 januari 2015, 23:33:50 pm
@Patrick,

Heb ook al zo'n trapcontroller gebouwd, maar zonder PIRs.
Bovenaan en onderaan de trap, een laserdiode en bpw34 als sensortje,
Nog nooit haperingen gehad. (Heb die voor iemand op aanvraag ontworpen, woon jammergenoeg helemaal gelijkvloers hier, nu, behalve die 1 trede naar de hobbyruimte, lol)

Vanwaar de keuze voor PIR en accelerometers ? Vind het wel een aparte keuze in elk geval :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 27 januari 2015, 21:04:31 pm
Deze slimme hier was effe vergeten dat we hier in België ook nog zwaartekracht hebben, dus één van de assen stond permanent op 1g, vandaar dat het licht meteen aanfloepte.  Kieken :-[

Gelukkig, anders had je geen trap nodig gehad :D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 27 januari 2015, 21:23:09 pm
@Patrick,

Heb ook al zo'n trapcontroller gebouwd, maar zonder PIRs.
Bovenaan en onderaan de trap, een laserdiode en bpw34 als sensortje,
Nog nooit haperingen gehad. (Heb die voor iemand op aanvraag ontworpen, woon jammergenoeg helemaal gelijkvloers hier, nu, behalve die 1 trede naar de hobbyruimte, lol)

Vanwaar de keuze voor PIR en accelerometers ? Vind het wel een aparte keuze in elk geval :-)
Als je een trap hebt waarvan de treden enkel in de muur verankerd zit (zwevende trap), heb je met een laser diode en sensor een probleem: er is maar één muur...
De PIR is dus de eenvoudigste oplossing, alleen durft die wel eens te falen.  M'n basis bord is de STM32F4DISCOVERY, daar zit zo'n LIS302DL accelerometertje in; dus dacht ik waarom deze niet effe gebruiken.  Ik gebruik die discovery voor al m'n schakelingen die met domotica te maken hebben, omdat ik daar genoeg geheugen heb voor m'n TCP/IP stack.  Elke domotica module hangt aan het netwerk en gebruikt PoE.
Ik heb al eens gezocht naar een lichtere versie, maar de TCP/IP stack vreet geheugen.  Moest ik voor de ESP8266 een wired alternatief vinden, zou ik wel een veel lichtere versie kunnen maken.

Maar je laser diode breekt weer wat mogelijkheden open; ik ga deze optie toevoegen voor trappen waar deze wel ingewerkt kunnen worden.  Via de software kan je dan instellen welke detectie je wil gebruiken.  Welke laser diode gebruik je?  Ik gok op een rode 5mW?

Deze slimme hier was effe vergeten dat we hier in België ook nog zwaartekracht hebben, dus één van de assen stond permanent op 1g, vandaar dat het licht meteen aanfloepte.  Kieken :-[

Gelukkig, anders had je geen trap nodig gehad :D
Wishful thinking ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 28 januari 2015, 07:49:42 am
grrrrrrrrrrrrrr gisteren een pic hemelen gestuurd
om de een of andere reden schakelde hij alleen maar bij 12 volt positief en dat was ????
hij werkte zo wel maar alles werkte verkeerd
aan was uit en uit was aan dus ????
en het programma was normaal goed geschreven (sorry peter nog met goto's)maar het werkte wel
want het zit in meerdere huisjes ingebouwd (het doet de tl verlichting flikkerend aan gaan)
ik ga het maar houden op een defecte pic want de nummer 2 die ik dan gebruikt heb die doet het wel 100%
ik heb het programma her schreven zonder goto's en qua werking is er geen verschil

ik heb wel nu de functie high led en low led gebruikt
High led1
   High led2
   High  led3
   High  led4
  While knop = 0 :Wend
 DelayMS 200
     Low  led1
     Low  led2
     Low led3 

dit inplaats van led1 = 1 /led1 = 0

en deze instructie werkt perfect
nu de button functie onder de knie krijgen
Chk1:
    DelayMS 25
    Button Sw1,0,40,5,Buf1,0,Chk2     
    Toggle LED1                         
Chk2:
    Button Sw2,0,40,5,Buf2,0,Chk3     
    Toggle LED2                       
Chk3:
    Button Sw3,0,40,5,Buf3,0,Chk1     
    Toggle LED3                       
    GoTo Chk1                           

eigenlijk is dit een soort van goto
kontroleer of knop sw1 gedrukt is zo niet ga naar chk2

maar de tussen liggende waarden hebben ook een functie en dat moet ik nog uit vogelen
zal wel een delay en bounce back bij zitten

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 28 januari 2015, 11:01:49 am
@Patrick,

idd, een gewone 5 mW laser uit zo'n laserpointer. (je kan die lasers los kopen ook, maar dat zal je al wel weten neem ik aan)
Over m'n vijver heb ik zodoende een "virtueel net" liggen tegen reigers, met één laserpointer en tig spiegeltjes, laat ik die laser-straal x-maal over m'n vijveroppervlakte bouncen, daaraan hangt dan zo'n scarecrow "waterkanon" ... (die hebben een ingebouwde bewegingsmelder, maar dat is niet zo handig als je zelf door je tuin wil lopen, zonder "beschoten" te worden)
Op die manier is de weg die de "laserstraal" aflegt, toch wel ruim meer dan 100 meter, zonder enige storing.

Die STM32 bordjes zijn ook leuk, STM32F411 Ikzelf gebruik de Nucleo STM32F411 regelmatig, daar passen Arduino shields op :-)

Bedrade vervanging voor ESP8266 bestaat hoor, alleen is die veel duurder.
Heb hier diverse "network-to-RS232" modulletjes liggen.
Kijk eens op Ebay naar objectnr. 251594530679
Zodoende heb je geen TCP/IP stack meer nodig in je STM32 bordje, wat geheugen bespaart :-)


groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Sattrickske op 28 januari 2015, 19:57:27 pm
Thanks Kris,

Laser + waterkanon tegen reigers, lol zeg, lijkt op Star Wars...  M'n tante had daar ook last van, die vraten gewoon hare vijver leeg.   Nooit bij stilgestaan om het met elektronica op te lossen, moet ik onthouden...  Ik zal eens bij jou op bezoek moeten komen, ze noemen mij vantijd een geek, maar ik heb de indruk dat jij ook wel van wanten weet ;)

Die nucleo's ken ik ook, ben ze al vaak tegengekomen, maar nog niet echt iets mee gedaan.  Is vergelijkbaar met de discovery, een fractietje duurder, omdat er nog weinig clones van bestaan.

Die modules had ik ook al gezien, maar ze zijn inderdaad vrij prijzig, 12€/stuk (en op AliExpress zijn ze zelfs duurder).  Dan ben ik beter af met de ENC28J60 modules en m'n discovery, samen pakweg 20€.  En dan heb je een pak processor power erbij.  Bovendien is de discovery al uitgerust met USB, debugger, accelerometer, i²c audio amp.
Ik vind het wel raar dat er geen wired equivalenten zijn voor de ESP8266 in dezelfde prijs-range, da's een supergoed moduleke aan een niet te kloppen prijs.  Misschien een gat in de markt?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 13 februari 2015, 22:48:24 pm
:-)

Na jaren "dromen" het eindelijk aangedurfd om RGB LED matrixen aan te schaffen.
Al diverse ervaring met gewoon éénkleurige LED matrixen, diverse lichtreclames al gebouwd op die manier, maar zo'n RGB is toch van een héél ander kaliber.
PWM sturing, constant refreshen van panelen enz ...

Momenteel een Teensy 3.1 in gebruik, in combinatie met SmartMatrix Library. Daaraan 6x 32x32 RGB LED panelen, goed voor 96x64 pixels, 6144 pixels momenteel dus.
Extra 6 panelen zijn op komst, maandag of dinsdag zouden die geleverd worden, om zodoende 128x96 pixels te hebben, in april gaan we dan ineens nog 12 panelen bijkopen,
en uiteindelijk zou die display 1m80 x 1m moeten worden. (ongeveer 16:9 verhoudingen met 288 x 162 pixels)

Momenteel haal ik 100 Hz refreshrate, 20 frames per seconde, 16bits kleuren. brightness staat momenteel op 25% ingesteld.
Het is héél moeilijk om zoiets te filmen, in't echt zijn de kleuren veel levendiger, en is de display super-stabiel. Waarschijnlijk komt dit slecht over op video omdat de frequentie van de camera (60p, 120 Hz) vrij dicht bij die 100 Hz ligt ...

Desalnietemin, 2 testjes gedaan, eentje om te zien of de framerate nauwkeurig is. Er zit een afwijking van 1% op. (originele clip was 2m33 en na afspelen 2m31)
Ik heb een converter geschreven om videofragmenten om te zetten naar Raw-data, zodat die microcontroller niet teveel werk heeft.
De bottleneck is momenteel de SPI interface (3,475 Mhz, ik haal dus maar 2 Mbyte per seconde van m'n SD naar m'n microcontroller, daar moet ik nog wat op verzinnen, want ik wil 24-bit kleuren, en een framerate die nog een tikje hoger ligt, refreshrate is wel OK zo)

Teletubbies: (referentie voor framerate - P.S. geluid is nadien toegevoegd, weinig moeite gedaan om dit syncroon te zetten)
http://youtu.be/rgMn0FfVty4

WipeOut: (vooral om te kijken of snelheid OK is, zonder artifacten of stotterende beeld of strepen)
http://youtu.be/6b5j-UJ87xQ

Eens kijken of we wat kunnen verzinnen voor de modelbaan met deze LED paneeltjes ...
misschien een paar achter de muurposters, om fonkelende sterrenhemel na te bootsen, of vuurwerk als er een feestje is in't H0 dorp :-)


groeten,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 14 februari 2015, 10:48:23 am
OT : tegen reigers kan je ook spiegelende bollen ter grootte van een voetbal op je vijver leggen aan een anker op de bodem. Aanvliegende visvreters schrikken door hun eigen weerspiegeling in die bollen en vliegen naar de visvijver van de buren...

Maar met lasers en waterkanonnen is het veel plezanter.

Erik
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 14 februari 2015, 11:44:30 am
tof....dat zijn zakens die ik ga onthouden, heb nu wel geen last met reigers >>> katten in buurt ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 14 februari 2015, 23:45:05 pm
We hadden in het begin zo een blinkende piramide op de vijver dobberen, maar werd zelf ook soms verblind door die schitteringen. Een net vond ik ook maar niks, dat neemt het zicht weg.
Die laser zie je niks van, alleen keken de buren raar toen ik bijna een hele dag rondom mijn vijver heb liggen kruipen met een plantenspuit om die straal zichtbaar te maken en die kleine spiegeltjes af te regelen :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 februari 2015, 19:45:10 pm
Vreemde dingen hier: probeer een communicatie over uart aan de praat te krijgen, na wat meten bleek de baudrate de helft te zijn van wat ik had ingesteld in de JAL code. Heb ik een 16f887 die op 4mhz interne klok draait ipv 8????
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 19 februari 2015, 19:55:08 pm
Een PIC 16F887 met interne klok start altijd op met 4MHz. De software moet deze zelf op 8MHz zetten. In Assembler moet je dat zelf doen. In JAL weet ik dit niet?

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 februari 2015, 19:57:41 pm
Ja inderdaad intussen zelf gevonden... RTFM!

Een simpel regeltje is voldoende:





OSCCON_IRCF=0b111


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 februari 2015, 20:28:55 pm
...RTFM!

DE oplossing voor veel problemen  :) :) :)  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 februari 2015, 20:35:43 pm
Een PIC 16F887 met interne klok start altijd op met 4MHz. De software moet deze zelf op 8MHz zetten. In Assembler moet je dat zelf doen. In JAL weet ik dit niet?

Ook in JAL (en andere hogere talen) moet je dergelijke settings nog zelf doen.  JAL heeft als voordeel boven PIC-assembler dat je je niets meer hoeft aan te trekken van bankswitching en dat complexe code eenvoudiger is te implementeren (en te lezen!).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 februari 2015, 23:13:14 pm
Na eerst wat gesukkel met de uart die het niet deed... tjah rtfm.... Maar nu gaat het vooruit:


Het rechtse printje is de UART terminal, te gebruiken als tijdelijk bedieningspaneel / lcd om variabelen enzo naar toe te zenden. Gerecupereerd van m'n eindwerk...
Links: µPLC module (zie een ander draadje dat ergens nog hier zou moeten staan). Bedoeling is om gans het schaduwstation van m'n baantje te gaan aansturen met zo'n module.


De wissels worden al goed gezet indien een spoor bezet wordt gemeld,
Kan de wissels terug goed zetten door een druk op de knop van de terminal (zou graag ook deze module en andere via een netwerkje aansturen)


Nog heel veel te doen ook uiteraard...

(http://i1065.photobucket.com/albums/u383/derousrian/IMG_06851_zps1afpbipr.jpg) (http://s1065.photobucket.com/user/derousrian/media/IMG_06851_zps1afpbipr.jpg.html)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 20 februari 2015, 18:45:07 pm
Vandaag de relais toegevoegd... werkt bijna... ook 2 relais ingezet om het keerlusprobleem op te lossen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 februari 2015, 20:51:56 pm
Een ganse reeks WS2812B led's sturen via een I2C slave.  Ringbuffers sturen en µs timing...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 februari 2015, 22:05:52 pm
LOCONET terugmelder voor 32 ingangen (massa detectie). Software al geschreven, in assembler voor een PIC 16F1519 op 16MHz. De software wordt nu getest met de simulator van MPLAB van Microchip. Ik probeer zoveel mogelijk hardware te gebruiken aanwezig in de µC. De basis van de software is onderstaande schema. De zwarte blokkjes is puur hardware, al of niet in de µC. Het blauwe deel is software interrupt gestuurd. Het purpere is de software voor de terugmelder in het MAIN programma.

Het is een vereenvoudigd programma, deze werkt nog enkel maar met een LOCONET waar enkel terugmelders en een MASTER als zender op zitten (hoop ik na de testen). Ontvangers waaronder MASTER, in principe geen probleem.

Peer to Peer ontvangst/zenden  is een optie voor later. Nu moet ik het adres van de 32 melders nog in assembler invoeren (een adres program drukknop is al voorzien) Ook de priority delay van elke µC is nog vast maar kan voor elke µC in assembler anders ingesteld worden.

Geert

(https://lh6.googleusercontent.com/-xIgYSkTtTMY/VOrrQLMjRLI/AAAAAAAAAiU/tN8UUSHsFZs/w796-h577-no/S88LN.png)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 24 februari 2015, 08:12:37 am
Is het dit dat ik nodig heb Geert??
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 februari 2015, 08:36:50 am
Is het dit dat ik nodig heb Geert??

als je met een intellibox basic je baan aanstuurt, dan is Loconet de enige manier, dacht ik, om terugmelders in te lezen.

Als dit ontwerp met massa detectie ooit werkt..., dan pas ik het Loconet communicatie toe op stroomdetectie.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 24 februari 2015, 19:10:16 pm
LOCONET terugmelder voor 32 ingangen (massa detectie)...

Geert, wat ik je wil meegeven ivm LocoNet terugmelders: er bestaat geen LocoNet opcode waarmee de status van een terugmelder kan worden opgevraagd (voor de status van een wissel, sein ed wel).  Een centrale en treinbesturingsprogramma wil wel de status van al de melders weten voor er automatisch wordt gereden.
 
Zonder 'speciale' trucjes moet die centrale wachten tot de terugmelder een opcode stuurt dat de toestand aan één van zijn poorten is gewijzigd, niet echt praktisch.
Een trucje die vaak wordt gebruikt bij terugmelders is om <OPC_GPON> in de gaten te houden.  Verschijnt die opcode op de bus, geeft de terugmelder de status van elke afzonderlijke melder na elkaar weer:

[Rx - 83 7C]  Global Power ON.
[Rx - B2 00 40 0D]  Sensor S1 () is Lo.  (BDL16 #1, DS1; DS54/64/SE8c #1, AuxA/A1/DS01)
[Rx - B2 00 60 2D]  Sensor S2 () is Lo.  (BDL16 #1, DS2; DS54/64/SE8c #1, SwiA/S1/DS02)
[Rx - B2 01 40 0C]  Sensor S3 () is Lo.  (BDL16 #1, DS3; DS54/64/SE8c #1, AuxB/A2/DS03)
[Rx - B2 01 60 2C]  Sensor S4 () is Lo.  (BDL16 #1, DS4; DS54/64/SE8c #1, SwiB/S2/DS04)
[Rx - B2 02 40 0F]  Sensor S5 () is Lo.  (BDL16 #1, DS5; DS54/64/SE8c #1, AuxC/A3/DS05)
[Rx - B2 02 60 2F]  Sensor S6 () is Lo.  (BDL16 #1, DS6; DS54/64/SE8c #1, SwiC/S3/DS06)
[Rx - B2 03 40 0E]  Sensor S7 () is Lo.  (BDL16 #1, DS7; DS54/64/SE8c #1, AuxD/A4/DS07)
[Rx - B2 03 60 2E]  Sensor S8 () is Lo.  (BDL16 #1, DS8; DS54/64/SE8c #1, SwiD/S4/DS08)
[Rx - B2 04 40 09]  Sensor S9 () is Lo.  (BDL16 #1, DS9; DS54/64/SE8c #2, AuxA/A1/DS01)
[Rx - B2 04 60 29]  Sensor S10 () is Lo.  (BDL16 #1, DS10; DS54/64/SE8c #2, SwiA/S1/DS02)
[Rx - B2 05 40 08]  Sensor S11 () is Lo.  (BDL16 #1, DS11; DS54/64/SE8c #2, AuxB/A2/DS03)
[Rx - B2 05 60 28]  Sensor S12 () is Lo.  (BDL16 #1, DS12; DS54/64/SE8c #2, SwiB/S2/DS04)
[Rx - B2 06 40 0B]  Sensor S13 () is Lo.  (BDL16 #1, DS13; DS54/64/SE8c #2, AuxC/A3/DS05)
[Rx - B2 06 60 2B]  Sensor S14 () is Lo.  (BDL16 #1, DS14; DS54/64/SE8c #2, SwiC/S3/DS06)
[Rx - B2 07 40 0A]  Sensor S15 () is Lo.  (BDL16 #1, DS15; DS54/64/SE8c #2, AuxD/A4/DS07)

Bij heel wat aangesloten melders genereert dat wel wat trafiek op het net.

Modernere melders (oa die van Digitrax zelf) reageren op een sequentie  van codes die door de centrale worden verstuurd.  Rocrail en JMRI doen dat ook:

[Tx - B0 78 27 10]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 1/0/0; addresses...
33-40, 97-104, 161-168, 225-232, 289-296, 353-360, 417-424, 481-488,
545-552, 609-616, 673-680, 737-744, 801-808, 865-872, 929-936, 993-1000,
1057-1064, 1121-1128, 1185-1192, 1249-1256, 1313-1320, 1377-1384, 1441-1448, 1505-1512,
1569-1576, 1633-1640, 1697-1704, 1761-1768, 1825-1832, 1889-1896, 1953-1960, 2017-2024
[Tx - B0 79 27 11]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 1/0/1; addresses...
41-48, 105-112, 169-176, 233-240, 297-304, 361-368, 425-432, 489-496,
553-560, 617-624, 681-688, 745-752, 809-816, 873-880, 937-944, 1001-1008,
1065-1072, 1129-1136, 1193-1200, 1257-1264, 1321-1328, 1385-1392, 1449-1456, 1513-1520,
1577-1584, 1641-1648, 1705-1712, 1769-1776, 1833-1840, 1897-1904, 1961-1968, 2025-2032
[Tx - B0 7A 27 12]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 1/1/0; addresses...
49-56, 113-120, 177-184, 241-248, 305-312, 369-376, 433-440, 497-504,
561-568, 625-632, 689-696, 753-760, 817-824, 881-888, 945-952, 1009-1016,
1073-1080, 1137-1144, 1201-1208, 1265-1272, 1329-1336, 1393-1400, 1457-1464, 1521-1528,
1585-1592, 1649-1656, 1713-1720, 1777-1784, 1841-1848, 1905-1912, 1969-1976, 2033-2040
[Tx - B0 7B 27 13]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 1/1/1; addresses...
57-64, 121-128, 185-192, 249-256, 313-320, 377-384, 441-448, 505-512,
569-576, 633-640, 697-704, 761-768, 825-832, 889-896, 953-960, 1017-1024,
1081-1088, 1145-1152, 1209-1216, 1273-1280, 1337-1344, 1401-1408, 1465-1472, 1529-1536,
1593-1600, 1657-1664, 1721-1728, 1785-1792, 1849-1856, 1913-1920, 1977-1984, 2041-2048
[Tx - B0 78 07 30]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 0/0/0; addresses...
1-8, 65-72, 129-136, 193-200, 257-264, 321-328, 385-392, 449-456,
513-520, 577-584, 641-648, 705-712, 769-776, 833-840, 897-904, 961-968,
1025-1032, 1089-1096, 1153-1160, 1217-1224, 1281-1288, 1345-1352, 1409-1416, 1473-1480,
1537-1544, 1601-1608, 1665-1672, 1729-1736, 1793-1800, 1857-1864, 1921-1928, 1985-1992
[Tx - B0 79 07 31]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 0/0/1; addresses...
9-16, 73-80, 137-144, 201-208, 265-272, 329-336, 393-400, 457-464,
521-528, 585-592, 649-656, 713-720, 777-784, 841-848, 905-912, 969-976,
1033-1040, 1097-1104, 1161-1168, 1225-1232, 1289-1296, 1353-1360, 1417-1424, 1481-1488,
1545-1552, 1609-1616, 1673-1680, 1737-1744, 1801-1808, 1865-1872, 1929-1936, 1993-2000
[Tx - B0 7A 07 32]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 0/1/0; addresses...
17-24, 81-88, 145-152, 209-216, 273-280, 337-344, 401-408, 465-472,
529-536, 593-600, 657-664, 721-728, 785-792, 849-856, 913-920, 977-984,
1041-1048, 1105-1112, 1169-1176, 1233-1240, 1297-1304, 1361-1368, 1425-1432, 1489-1496,
1553-1560, 1617-1624, 1681-1688, 1745-1752, 1809-1816, 1873-1880, 1937-1944, 2001-2008
[Tx - B0 7B 07 33]  Interrogate LocoNet Turnouts/Sensors with bits a/c/b of 0/1/1; addresses...
25-32, 89-96, 153-160, 217-224, 281-288, 345-352, 409-416, 473-480,
537-544, 601-608, 665-672, 729-736, 793-800, 857-864, 921-928, 985-992,
1049-1056, 1113-1120, 1177-1184, 1241-1248, 1305-1312, 1369-1376, 1433-1440, 1497-1504,
1561-1568, 1625-1632, 1689-1696, 1753-1760, 1817-1824, 1881-1888, 1945-1952, 2009-2016

Op het LocoNet-Hackers forum is daar enige tijd geleden een hoop uitleg over gegeven.  Als je interesse hebt, zal ik de mails eens opsnorren en je via PM doorsturen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 27 februari 2015, 16:27:28 pm
Ondertussen "bijna" klaar  ;D

Ik heb van de 4096 beschikbare program words er nog maar 748 vrij
Voor de waterpeil en voorraadwatertanks zal ik een tweede PIC moeten gaan gebruiken.

Het afstellen van de gaskraan en de afstand van de vonk elektrodes:
 https://www.youtube.com/watch?v=JXYZi1KcEWo

Geheel automatisch laten opstarten op gas, laten overgaan op wasbenzine en dan de vlam regelen afhankelijk van de druk:
 https://www.youtube.com/watch?v=VNcZBWMNnyU

verder nog een test van de veiligheid.
Door een te groot vuur zakt bij het opengaan van de veiligheid de druk te weinig en moet ik wat helpen met de stoomafsluiter.
Later komt er een (reeds eerder berekende) tweede veiligheid bij:
 https://www.youtube.com/watch?v=7bpZUpBS8Dk

groet van Harm

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 01 april 2015, 14:42:06 pm
Van narigheid maar van de 16F883 overgestapt naar de 16F887, dan heb ik weer ruimte om wat programwords bij te voegen.
De kleine PIC zat vol  ::)

Gelukkig spreekt die exact dezelfde taal als de kleine.
Overzetten ging dus heel wat soepeler dan de wisseling van 88 naar 883.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 01 april 2015, 16:17:42 pm
zwijg me van om zetten he Harm
een 12F628 en een 16f628 spreken ook niet dezelfde taal
voor het schaduw station wil ik die kleintjes gebruiken omdat er toch geen signalen mee gestuurd moeten worden
je ziet ze toch niet staan
buiten 1 led die aangeeft dat de processor werkt is er niets naar buiten zichtbaar uitgevoerd
alleen ze spreken niet het zelfde chinees

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 01 april 2015, 19:46:13 pm
...Gelukkig spreekt die exact dezelfde taal als de kleine...

...een 12F628 en een 16f628 spreken ook niet dezelfde taal...

Toch even een rechtzetting: ze spreken allen identiek dezelfde taal want ze hebben dezelfde instructieset.  Alleen bij de 18F (en hogere) versies is die instructieset uitgebreid.  Ze spreken dezelfde taal, alleen zijn de benamingen van hun interne componenten anders.

Johnny en Marina in Vlaanderen spreken hetzelfde Nederlands als Joop en Truus in Nederland.  Alleen gaat Johnny een Jupiler uit de frigo halen en Joop een Heineken (oa GPIO.X versus PortX.Y).

Eén goede raad: lees tenminste de datasheets alvorens aan iets te beginnen en heel veel (mogelijke) problemen zijn op voorhand al opgelost.  Raad van iemand die regelmatig 200 à 400 pagina's saaie lectuur doorneemt (saai op het eerste zicht maar vaak boeiend door de vele ontdekkingen/mogelijkheden die opduiken in die lectuur)...

...En vooral: blijven verder doen!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 01 april 2015, 20:52:06 pm
hoi Peter

je dat heb ik gedaan hoor want anders krijg je ze helemaal niet gecompileerd
en saai zou ik niet willen zeggen ;ik noem het eerder gecompliceerd alee voor mij dan toch
je ziet wel dat er tegenwoordig meer in jal word geprogrammeerd
maar het is april dus treinen aan de kant en nu weer aan de boten bezig
oktober kunnen we weer
wil niet zeggen dat ik niet met microprocessoren bezig ben maar dan op een andere manier

ik wil een comunicatie over 2 draden gaan maken
aan de zender kant 2 potmeters en 2 schakelaars
aan de andere kant 2 servo's en 2 schakel kanalen

enig idee ?? want die ser instructie heb ik nog nooit gebruikt
eens kijken of ik daar iets van in de handleiding vind
16F877
met deze zou ik het willen gaan doen
die s88 is dat geen serieel commando ik dacht het wel
en can bus daar wil ik echt niet meer aan beginnen daar heb ik mijn buik van vol
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 02 april 2015, 10:40:00 am
een zender en ontvanger via 2 draden ? 
Dat zou ik in "mijn" platformtaaltje gewoon oplossen door  2 ATMel controllers te linken via  I2C , de library  "wire.h" laden en klaar, je kan communiceren op "de I2C bus" met zo veel toestellen als je wil  , tot max 999 dacht ik.

of als je niet houdt van I2C dan gewoon  UART/TTL (korte afstand) of RS 232   (met een MAX232 IC en een handjevol condensatortjes aan beide kanten)  en  de ingebouwe  "Serial"  instructies gebruiken.

Maar ik ben dan ook nog maar in het beginners stadium.  :-) :-) :-) :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 02 april 2015, 11:14:41 am
I2C heeft maximaal 127 adressen ;-)

Als het gewoon over twee toestellen gaat, zou ik voor RS232 gaan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 02 april 2015, 13:09:54 pm
I2C heeft maximaal 127 adressen ;-)

Als het gewoon over twee toestellen gaat, zou ik voor RS232 gaan

127 (+ 0 voor de master = 128 ) klopt als een bus....   I stand corrected  (jer hebt maar 7 significant data bits in een I2C adres)

en het tweede klopt ook. 

Zelfs met meerdere toestellen.  de Arduino Mega heeft max 4 hardware seriële poorten  (Serial, Serial1,Serial2, serial3)
en met  "softserial" poorten nog meer.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 02 april 2015, 13:10:19 pm
ik zou wel een 75 meter ver moeten geraken
het idee er achter
oudere zenders hadden een seriële uitgang en de ontvangers een seriële ingang
zo kon je dus iets laten zien op een tentoonstelling zonder dat je een frequentie in beslag neemt

nu met onze duikboten (onderzoeks en filmboten)vaar je eigenlijk niet veel maar wel veel draaien en op en neer
nu de camera zit vast met een kabel want 2.4  en vooral video signaal naar boven zenden wekt niet (zelfs bij de echte niet)
nu die kabel er toch zit kunnen we evengoed ook de besturing signalen via de kabel mee sturen
of er nu een 2 of een 3 aderige kabel gebruikt word maakt dus niet zoveel uit

de 2 potmeters zijn voor de motoren (regelaars in de boot)en de 2 schakel kanalen zijn voor de verlichting en de pompsturing
licht hebben we genoeg kijk zelf maar
(http://i57.tinypic.com/znwiu.jpg)
10 sipper led's zitten hier in en de update heeft 20 van die leds + nog een 3 watt led in het midden
(http://i60.tinypic.com/zilfl1.jpg)
het sturen van de pic is geen probleem dat programma kan ik schrijven en het ontvanger gedeelte daar krijg ik ook een stuk van klaar
maar juist dat serieel gedoe daar heb ik dus helemaal geen kaas van gegeten
eens kijken wat die voorgestelde systemen allemaal kunnen

mijn idee was elke variabele uitlezen
BV
pot1 = 12500
pot2 = 10000
schak1=800
schak2 = 15000
en deze zo via de seriële link verzenden
dan terug inlezen in pot1,pot2 enz.
en dan kan ik daar de betreffende regelaars mee sturen
gr raf die nu effe gaat spitten in de gekregen info
 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 02 april 2015, 13:23:47 pm
* Met 2 aderige kabel kan je geen RS 232 gebruiken, daar heb je 3 draden voor nodig.   RX-Gnd-TX
* I2C over een afstand van 75 meter is om problemen vragen


Persoonlijk zou ik over een afstand van 75 meter opteren voor een symmetrisch seriëel protocol/bedrading zoals  RS-485 .
Dan heb je 2 draden voor zenden en 2 voor ontvangen volledig gescheiden.  dus in totaal 4 draadjes , en met de nodige hardware natuurlijk.


De  MAX-232 chip heeft 2   omzetters vane UART naar  RS 232 aan  boord


Er is ook een MAX485  chip beschikbaar  (8 pins IC)  die een  UART signaal omzet naar een symmetrisch RS485 signaal.  Dus dat is wat je volgens mij best zou kunnen gebruiken.   Alhoewel, de meeste toepassingen die ik zie  voor de  MAX485  zijn  "omgekeerd", dus om een  2-aderige UTP  kabel te gebruiken tussen 2 data punten.  (en die data punten sturen dan eigenlijk  gewoon RS232 op de 485 poorten in/out door de 2  min draden samen te leggen.)  Je valt dan wel terug op half duplex maar voorjouw toepassing lijkt me dat niet echt een ramp.


Steek eens je licht op bij  "aquaticus", daar ga je volgens mij veel fijne dingen vinden voor je onderzeeërs.

http://www.google.be/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&ved=0CAcQjRw&url=http%3A%2F%2Faquaticus.info%2Frs485&ei=JCYdVbezLYnfPa7sgKAI&bvm=bv.89744112,d.ZWU&psig=AFQjCNGTGkK6LveePf_uzmBlrkXpwXei-g&ust=1428059977499479


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 02 april 2015, 13:55:41 pm
hallo Dani

er is geen terug koppeling nodig dus alleen tx van de zender uit
de zender hoeft niet te weten wat de ontvanger doet

nu is het zo dat via de seriële verbinding dit signaal verstuurd word

een puls van 4MS en dan de stuur pulsen met een max van 2 ms
dus 4 + 2 + 2 + 2 + 2
bij 4 reset de ontvanger zich
de pulsen van 2 ms kunnen minimum 1 ms breed zijn of max 2 ms lang zijn met een pauze van steeds 1 ms
de ontvanger schakelt op de opgaande flank van de puls en meet dan de tijd die de puls lang is
een 4 kanaals ontvanger telt dus eigenlijk tot 5
zo kun je BV bij een 8 kanaals zender toch een 4 kanaals ontvanger gebruiken
je zend
4+2+2+2+2+2+2+2+2 voor een 8 kanaals ontvanger
en de 4 kanaals ontvanger krijgt dit binnen
4+2+2+2+2 ++++waar hij dus met de laatste 4 niks doet en gewoon wacht op de reset puls
ik zal eens kijken of ik dit signaal op een scoop kan krijgen

(http://www.rcdesign.ru/var/rcd/storage/images/articles/radio/tx_intro/ppm_signal/9137-1-rus-RU/ppm_signal1.gif)
beeld gevonden en dat legt ongeveer uit wat ik bedoel
het kan zijn dat dit voor een meer moderne ontvanger/zender is wat ik schreef was van jaren geleden

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 02 april 2015, 20:40:00 pm
I2C heeft maximaal 127 adressen ;-)

Als het gewoon over twee toestellen gaat, zou ik voor RS232 gaan

127 (+ 0 voor de master = 128 ) klopt als een bus....   I stand corrected  (jer hebt maar 7 significant data bits in een I2C adres)

en het tweede klopt ook. 

Zelfs met meerdere toestellen.  de Arduino Mega heeft max 4 hardware seriële poorten  (Serial, Serial1,Serial2, serial3)
en met  "softserial" poorten nog meer.
Aanvulling: er bestaat ook een 10-bit mode dacht ik? In welke mate dat er hardware is die dat ondersteund weet ik niet....
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 02 april 2015, 22:06:37 pm
* Met 2 aderige kabel kan je geen RS 232 gebruiken, daar heb je 3 draden voor nodig.   RX-Gnd-TX
* I2C over een afstand van 75 meter is om problemen vragen


Persoonlijk zou ik over een afstand van 75 meter opteren voor een symmetrisch seriëel protocol/bedrading zoals  RS-485 .
Dan heb je 2 draden voor zenden en 2 voor ontvangen volledig gescheiden.  dus in totaal 4 draadjes , en met de nodige hardware natuurlijk.

Voor RS485 of 422 (differential transmitter/receivers) kom je theoretisch toe met 2 (getwiste) signaallijnen, echter in praktijk zal je ook de 0V van de systemen onderling moeten doorverbinden. Achterliggende reden is dat de common mode voltage van de zender/ontvangers beperkt is tot ongeveer 10V. Anders gesteld, als je niet kan garanderen dat het potentiaal verschil van de (0V van de ) ontvangers onderling niet meer dan 10V verschilt heb je kans om de zenders/ontvangers stuk te helpen. Potentiaal verschillen tussen toestellen kunnen optreden door bvb. de grote afstanden, lekstromen naar aarding, statische elektriciteit , etc).

mvg,

Patrick Smout
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 07 april 2015, 20:56:35 pm
lees tenminste de datasheets alvorens

Daar zal ik niets meer over vragen, wees gerust.  ;)
Ik heb nog wel wat simpelers, maar mij zegt het niets.
Ik krijg onderaan de blz bij de proton IDE de volgende regel:

WARNING: WORD Variable "GB2DTEL" Crossing Bank boundary 0-1

wat betekent dat?

groet Harm



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 april 2015, 21:17:03 pm
@ harm

ik heb dit gevonden

"Problems may also arise if a word or dword variable crosses a BANK boundary. If this happens, a warning message will be displayed in the error window. Most of the time, this will not cause any problems, however, to err on the side of caution, try and ensure that word or dword type variables are fully inside a BANK. This is easily accomplished by placing a dummy byte variable before the offending word or dword type variable, or relocating the offending variable within the list of Dim statements."


dus het kan helpen om de dim statements anders te schikken en zo kan het zijn dat deze error verdwijnt
ja ik kan op het proton forum gaan kijken hé LOL

gr raf en hopelijk heb je der iets aan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 07 april 2015, 22:20:26 pm
lees tenminste de datasheets alvorens
...Daar zal ik niets meer over vragen, wees gerust.  ;)

 ::) ::) ::)  ;)

WARNING: WORD Variable "GB2DTEL" Crossing Bank boundary 0-1
wat betekent dat?

Harm, zoals Raf al zei: een dummy variabele definiëren...
MAAR de compiler is niet dom en alleen definiëren volstaat niet!
De variabele moet ook geïnitialiseerd en gebruikt worden (niet geïnitialiseerde - of eenvoudiger gezegd: gedefiniëerde variabelen
die niet effectief worden gebruikt - worden door een slimme compiler genegeerd).

Dus (in pseudo-basic):

Dim dummy as byte       'definitie
Dummy = 1               'initialisatie
Dummy = Dummy + 1       'dummy bewerking om zeker te zijn dat de variabele wordt gecompileerd

Ik vermoed dat je probleem op die manier wordt opgelost.  Lukt het niet met één byte variabele, plaats er dan nog (één of meerdere) dummy variabelen bij.

Het is wel de eerste keer dat ik dit probleem bij een compiler hoor.  Dat is onder andere één van de belangrijke taken die een compiler in de gaten moet houden (variabelen optimaal in de verschillende geheugenbanken schikken).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 april 2015, 23:30:57 pm
hoi

peter ik heb het eens voorgehad dat een variabele te groot werd om nog in 1 bank te passen
vroeger met de z80 moesten we daar bij bankswitching ook mee op passen en inderdaad dummy variabele bij maken
maar met de processoren heb ik dat probleem dus nog nooit niet voorgehad

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 09 april 2015, 15:28:30 pm
If this happens
Dank Raf.
Ik heb in de lijst van 130 variabelen een PICnep als byte bijgeschreven (bit werkte niet) en in een subroutine zet ik die eerst op 0 en daarna INC PICnep.
Heb eerst nog geschoven met wat variabelen(dan staat het niet meer op alfabet) maar dan verschuift de errormelding naar een andere variabele.

Crossing bank boundary zegt me nu nog steeds niets, maar de error is weg.

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 09 april 2015, 19:53:52 pm
Crossing bank boundary zegt me nu nog steeds niets, maar de error is weg.

Harm,

Even een poging om dit probleem uit te leggen...  ...Maar eerst wat PIC geheugen theorie:

Ik neem als voorbeeld een 16F88 (enkele pagina's terug heb ik gezien dat je daar mee werkt).  Neem de datasheet (lap, daar gaat hij weer...) en in het hoofdstuk 'Register File Map' kan je zien dat het RAM geheugen (random-access memory (http://nl.wikipedia.org/wiki/Random-access_memory)) verweven zit tussen de SFR's (Special Function Registers).  SFR's die niet worden gebruikt, kunnen als RAM worden gebruikt.
In de begindagen van de PIC's was er niet veel RAM nodig en waren die SFR's ook vrij beperkt.  Nieuwe types komen, meer SFR is nodig, meer RAM wordt ook noodzakelijk...

...Nieuwe SFR's en meer RAM betekent het volledige ontwerp van de controller hertekenen...  Duur, heel duur en niet meer 'backwards compatible' met eerdere types (heel belangrijk!).

Oplossing?  Heil zoeken in een reeds oude (en haar sporen verdiende) oplossing: uitbreiding van het geheugen (en SFR's) door parallel aan de bestaande SFR's en vrij geheugen nieuwe geheugenplaatsen te creëeren.
Voordeel?  Je kan hetzelfde adresbereik blijven behouden.  Nadeel?  Eén geheugenadres kan/moet meerdere geheugenlocaties aanspreken.  In welke geheugenlocatie je bezig bent hangt af van in welke geheugenbank je op dat moment aan het werken bent.
Je geheugenpointer verwijst naar je geheugenadres, één 'Special Function Register' bepaalt in welke geheugenbank je bezig bent.  Heb je bvb een geheugenpointer die 128 plaatsen (plaats 0 tot plaats 127 = 2^7° = 128 bytes) kan aanspreken en je wil een totaal geheugen van 512 bytes (512 = 4 * 128 bytes = 2^9°).  Je hebt dan je 7 adresbits en de resterende twee adresbits ga dus 'ergens' moeten halen.  Oplossing: maak een 'Special Function Register' waar je die twee resterende adresbits in kwijt kan.  Bij een 16F88 is dit bit RP0 en RP1 (SFR -> STATUS<6> en STATUS<5>).

Totdaar de theorie. 

Wat is nu jou probleem: iedere vrije RAM plaats is slechts één byte (8 bits).  Elke keer je een byte variabele declareert (en initialiseert), wijst je compiler die toe aan een nog vrije geheugenplaats (om het even in welke geheugenbank).  Ga je een word-variabele (16 bits = 2 geheugenplaatsen) of een dword (32 bits = 4 geheugenplaatsen) creëren, gaat je compiler die voor zijn eigen gemak in opeenvolgende geheugenplaatsen zetten (opeenvolgende om nadien veel efficiënter met die groter wordende variabelen te kunnen rekenen).

Stel je hebt (zoals bij een 16F88) 128 geheugenplaatsen per bank en de eerst vrije plaats is adres 126.  Je vraagt geheugen (declareren) voor een dword (32 bits = 4 * 8 bits = 4 bytes).  Je eerste 2 bytes 'passen' nog in die bank en de andere twee moeten sowieso naar een andere bank en dan krijg je het 'Crossing bank boundary' error.

Moet je daar rekening mee houden?  Neen!  De compiler moet dat doen. Als die ziet dat je slechts 2 bytes meer over hebt op het einde van je bank en je wil er vier voor een variabele, moet hij die in een andere bank steken en die 2 resterende van de vorige bank markeren als 'vrij voor 2 bytes'.  Blijkbaar doet jou compiler dat niet (...)!

Moet je daar rekening mee houden?  Ja!  Als je net als Geert in assembler werkt en als je hersenen dienst doen als compiler.  Het grote voordeel is dan dat je alles in de hand hebt, het grote nadeel is dan dat je je datasheet binnenste buiten moet kennen en dat je iedere stap van je controller moet binnenste buiten kennen!

Ik hoop dat mijn uitleg te begrijpen valt...


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: doomslu op 09 april 2015, 20:16:23 pm
Peter, ook al ben ik hier totaal niet mee bezig, toch begrijp ik het! De specialisten zullen het zeker begrijpen.  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 09 april 2015, 20:26:30 pm
Het verhaal van Peter klopt volledig. Maar, per bank kan je maar 80 Bytes gebruiken. De eerste 32 bytes per bank zijn niet bruikbaar voor vrije data (registers om hardware aan te sturen). De laatste 16 zijn voor elke bank dezelfde (gemeenschapelijk geheugen per bank).

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 09 april 2015, 20:46:32 pm
volledig begrepen peter
want bij de z80 konden wij niet anders dan dit zo doen om meer geheugen te krijgen
128 kB was de max die we konden aanspreken dacht ik
en dan waren we reeds aan het bank switchen als gek
toen zonder compiler moest je inderdaad kijken of je plaats genoeg had in de banken

was wel plezant werken zo en die 4 Hz van de pic's was ook in de standaard z80 de snelheid
sommige (ikke ook )hadden de militaire versie op 18 Hz draaien LOL
als je nu de snelheden ziet die er gehaald worden staan die Z80 processoren bijna stil

gr raf en nog bedankt om het geheugen eens terug op te frissen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 april 2015, 13:55:53 pm
Even een vraagje voor de experten onder ons....


Ben eindelijk gestart aan de DCC-decoder...
http://www.treinbaanrian.be/elektronica/decoder.htm (http://www.treinbaanrian.be/elektronica/decoder.htm)


Een eerste experiment (zie link) lijkt al redelijk te lukken... De CCP module genereert een interrupt op elke stijgende flank van een gewoon kloksignaal van 15khz (=nog geen DCC, dat is de volgende stap). De waarde van de CCP module registers worden weergegeven op een display.


Ik zie vrij stabiel 84 a 86 op de display. Na omrekening zou dat 25 Khz zijn? Is dat geen grote afwijking? Maakt allicht niet zoveel uit, is niet de bedoeling om een frequentiegenerator te bouwen, als ik in de volgende stap maar het verschil kan uitmaken tussen "0" en "1"?


Zou moeten ongeveer 120 zien denk ik? Op 8 Mhz zijn er 120 instructietijden verstreken in één periode van de 15 khz toch? Of maak ik een rekenfout

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 19 april 2015, 14:32:00 pm
Ik zie vrij stabiel 84 a 86 op de display.
Zijn dat microseconden? Dan kom ik op (ongeveer) 11,7 kHz
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 19 april 2015, 14:40:30 pm
Nee de klok van de µC draait op 8Mhz. Er zijn 4 kloktijden nodig om één instructie uit te voeren. Dus 2 000 000 instructies / seconde. Timer 1 "telt" het aantal instructies. Op het moment dat de interrupt gegenereert wordt, geef ik de waarde van Timer1 weer op de display ;)

Edit: nu hangt mijn multimaus aan de controller, en krijg 185 & 412, dat lijkt wel te kloppen? (kan dus al zeker "1" en "0" onderscheiden van elkaar  :D   )
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 19 april 2015, 14:58:15 pm
Rian,

Als ik nog kan rekenen:
15KHz -> 66µs
@8MHz -> één instructie 500ns
Zonder ISR overhead zou je (theoretisch want die ISR overhead is er: registers saven, interruptsprong, ...) 132 op je display moeten krijgen.

Let wel op om je display vanuit je ISR te sturen: je hebt slechts 132 cycles per interrupt en dat is veel te weinig om naast je ISR routine uit te voeren ook nog je display te updaten!  Een ISR hou je best zo kort mogelijk (kort ook in verwerkingstijd).

Properder is om in je interruptroutine een vlagje te zetten en in je mainloop continue dat vlagje te testen om je display te updaten.  Is het vlagje geset, is er een nieuwe waarde.  Na het verwerken op het display van die waarde reset je dat vlagje.  In je interruptroutine kijk je ook naar dat vlagje en wanneer dat nog geset staat, betekent dat dat de vorige waarde nog niet is verwerkt.

Wel opletten als je variabelen zowel binnen als buiten je ISR gebruikt om die 'volatile' te declareren (vb var volatile byte variabele_naam).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 23 april 2015, 23:19:42 pm

Beetje voort gedaan deze avond aan wat schoolgroeps[size=78%]werk: een pic controller stuurt per pwm 6 IR ledjes aan op een bepaalde frequentie. De bedoeling is om een soort "afstandsbediening" te maken voor onze robot die een doolhof moet oplossen. Er zijn meerdere begin/eindpunten aan het doolhof en de bedoeling is dus om de kortste weg tussen deze punten te zoeken. Op elk zo'n eindpunt ligt zo'n schakelingetje (nog 5 printjes te solderen). Aan de hand van de knipperfrequentie zal de robot met een mBed ARM processor weten of hij wel juist is aangekomen. Alle 6 printjes hangen aan een basisstation (een raspberry pi) via I²C . Zo kan interactief gewerkt worden... bv ga op zoek naar eindpunt met gegeven frequentie en dan kun je de frequentie aanpassen via I²C.

(geen irDa protocol gelijk de tv afstandsbediening, meeste communicatie gaat via xbee direct van de pi naar de m3pi robot). De PI is ook een tussenschakel tussen de app op android voor de bediening van het geheel en de elektronica....



(http://i1065.photobucket.com/albums/u383/derousrian/2015-04-23%2021.53.15_zpsz5ggwzds.jpg)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 23 april 2015, 23:29:58 pm
vandaag een nieuwe DCC library gevonden voor Arduino.
Deze even getest en hij is super !!!  Het laat toe om op 1 enkele adres tot 18 functies te programmeren.

Ik heb 'm "gestript" en een beetje omgebouwd.
Ik ga nu de bediening van mijn "spycam" in de camera trein doen met een ATT85 die wordt aangestuurd op hetzelfde adres als de loco zelf.
F0 =  verlichting van de trein  (front en sluitlichten)
F1 = start de camera
F2 = stop de camera
F3 = reset de camera
F4 = extra schijnwerpers.

Benieuwd hoe dat gaat werken.     Op mijn breadboard met een Arduino Uno alvast wel...
Maar bij het compileren naar ATT85  krijg ik nog foutmeldingen van de DCC library....  blijkbaar toch niet 100% compatibel
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 april 2015, 08:05:38 am

Ik zie vrij stabiel 84 a 86 op de display.


Zoals Peter al zij, zou je bij 15kHz 132 op je display moeten krijgen, hexadecimaal komt dat neer op 84. Zou wel toeval zijn geweest... Je code geeft de waarde echter decimaal weer, dus dit is niet de fout.

Ik merk in je programmacode dat je de interne clock van 8MHz naar een pin voert (fuses: OSC INTOSC_CLKOUT) Dit heeft niet veel zin. Beter is _NOCLKOUT te gebruiken. Dit geeft een extra in-output pin vrij.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: minitreintje op 24 april 2015, 17:04:26 pm
vandaag een nieuwe DCC library gevonden voor Arduino.
Deze even getest en hij is super !!!  Het laat toe om op 1 enkele adres tot 18 functies te programmeren.

Ik heb 'm "gestript" en een beetje omgebouwd.
Ik ga nu de bediening van mijn "spycam" in de camera trein doen met een ATT85 die wordt aangestuurd op hetzelfde adres als de loco zelf.
F0 =  verlichting van de trein  (front en sluitlichten)
F1 = start de camera
F2 = stop de camera
F3 = reset de camera
F4 = extra schijnwerpers.

Benieuwd hoe dat gaat werken.     Op mijn breadboard met een Arduino Uno alvast wel...
Maar bij het compileren naar ATT85  krijg ik nog foutmeldingen van de DCC library....  blijkbaar toch niet 100% compatibel

Heb je soms een linkje?

Groeten,
Dylan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 24 april 2015, 17:07:19 pm
Ik laat Dani eerst alles testen, en vraag dan het linkje  ;)


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: minitreintje op 24 april 2015, 17:08:16 pm
Aaah zo :p  8)


groeten Dylan
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 25 april 2015, 08:47:20 am
http://model-railroad-hobbyist.com/node/19070

http://model-railroad-hobbyist.com/node/19446

En zelfs een versie die je kan prorammeren met cv instellingen

http://model-railroad-hobbyist.com/node/19775


Have fun
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 03 mei 2015, 23:03:17 pm
Tussen alle 1/1 werkzaamheden toch op 'verloren' momenten nog wat verder aan het werken aan mijn LocoNet synoptisch bordje.  De status van 32 schakelaartjes via I2C opvragen met twee keer een MCP23017 (http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf).  32 RGB ledjes (WS2812B (http://www.adafruit.com/datasheets/WS2812B.pdf)) stuur ik aan via een zelf ontworpen I2C slave met een PIC 18F2550 (http://ww1.microchip.com/downloads/en/DeviceDoc/39632b.pdf).  Een 18F2550 is misschien een beetje 'overkill' maar ik heb hier een hoopje dergelijke processoren liggen...

Een printje voor de led interface heb ik reeds samen geflanst:

(http://www.pctoytoy.be/2015/20150503_1.jpg)

Omdat ik bij de processor nog heel wat poorten en geheugen vrij had, heb ik er een extra WS2812B led bijgezet en een trimmertje voor rood, groen, blauw en intensiteit.  Via I2C kan ik eenvoudig de waarden opvragen voor een mooi kleurtje.  Aan de trimmertjes draaien tot de kleur me aan staat en via een terminal programma en de Bus Pirate (http://dangerousprototypes.com/2009/10/04/prototype-bus-pirate-v3/) de waarden uit de I2C slave lezen.

We blijven bezig...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 11 mei 2015, 16:16:15 pm

Een hoop printjes geëtst. Boren, solderen, en testen testen testen ...  tot er rook uit komt  8)


(https://lh6.googleusercontent.com/-OdBFsFzob0M/VVC4DcTlAzI/AAAAAAAAAoo/Mk7ex241vVU/w1044-h551-no/loconet%2Bfoto.png)


(https://lh5.googleusercontent.com/-TpboG01OsoQ/VVC4DBy_dHI/AAAAAAAAAok/UJIe8yXcGI0/w920-h493-no/loconet%2Bschema.png)

Geert



Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 mei 2015, 16:18:21 pm
as ter rook uitkomt is het dus niet goed hé Geert
ik zit dus met een sensor probleem en hopelijk krijg ik het goed opgelost want anders dikke problemen
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 11 mei 2015, 17:06:52 pm
baaah als er rook uit komt dan weet je dat de stoomcentrale werkt  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 mei 2015, 17:49:49 pm
ja hier werkt het  geven van rook signalen ook
juist 75 euro naar de pic hemel gestuurd
de ju al weer
ik ga zelf die dingen maken want ze proberen zoveel mogelijk in die rommel te steken wat ik niet nodig heb
dat de printjes te groot worden en ik krijg ze niet in mijn boten omdat ik nu kleiner begin te bouwen
dus programmeren maar en dan zelf de print in elkaar solderen
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 11 mei 2015, 19:22:45 pm
...Een hoop printjes geëtst. Boren, solderen, en testen testen testen ...  tot er rook uit komt  8) ...

Geert,

Ziet er weer proper uit!

Een vraagje: stel dat je een baan hebt waar je reeds (vb) melder 1 tot en met 64 via een 'klassieke' S88 terug meldt.  De volgende 23 melders wil je met jou LocoNet terugmelder genereren.  Kan je de module eenvoudig op adres 65 (als eerste melder van je module) instellen en de module 'wijs maken' dat er slechts 23 van de 32 melders moeten worden gemeld?  Kan dit via een aangesloten LocoNet centrale of moet dit hardwarematig (via een PIC programmer) worden gerealiseerd?

Als je een proeframmelaar zoekt, wil ik wel testen  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 mei 2015, 20:26:26 pm
Mooi printje, maar ik zou minstens een deel in smd doen.
De 32 serieweerstanden zijn dan bvb 64 gaatjes minder te boren  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 mei 2015, 20:41:24 pm
kan dit kloppen want ik kan het niet testen voor ik het in de pic brand
probleem met die pulsgenerator van de real pic simulator om die in te stellen

Device 12F629
                   
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON,  MCLRE_OFF
 All_Digital TRUE                                           
 Xtal 4
 Declare PortB_Pullups On
             
PORTB = %11111111             ;Maak alle poorten van PORTb hoog
TRISB = %11111111
 
Symbol relais1 = GPIO.0
Symbol relais2 = GPIO.1
Symbol led = GPIO.2
Dim W3 As Word

Clear
DelayMS 10

While 1 =1
PulsIn GPIO.3,1,W3
Toggle led             
If W3 <  800 Then
relais2 = 1
relais1 = 0
 
  Else
  relais1 = 1
  EndIf
If W3 >  900 Then
relais1 = 1
relais2 = 0 
 Else
 relais2 = 1
 EndIf

Wend


met puls in lees ik dus de inkomende puls
als die kleiner  is dan 800 dan relais 1 aan trekken
is die groter dan 900 relais 2 aan trekken

zit die er tussen in niks doen
dit is het idee achter het programma

ik hoor het wel
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 mei 2015, 20:55:52 pm
Ik ken niks van Pics, maar wel iets van AVR, maar naar mijn idee:
 
- uw ledje zal constant knipperen
- relais 1 zal vanaf 800 "aan" gaan - dus klapperen indien de pulslengte rond de 800 zweeft
- zelfde verhaal met relais 2, maar die klappert rond de 900
=> ik zou in de code geen "else" met het regeltje er onder gebruiken

ik zie ook niet goed hoe je de tijdmeting doet:
 - ik denk dat je delayms 10 verdwaald is - hoort die niet in de While ... Wend lus ?
 - hoor je w3 niet op te hogen (en op nul te zetten indien groter dan ... ) ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 11 mei 2015, 21:53:55 pm


Een vraagje: stel dat je een baan hebt waar je reeds (vb) melder 1 tot en met 64 via een 'klassieke' S88 terug meldt.  De volgende 23 melders wil je met jou LocoNet terugmelder genereren.  Kan je de module eenvoudig op adres 65 (als eerste melder van je module) instellen en de module 'wijs maken' dat er slechts 23 van de 32 melders moeten worden gemeld?  Kan dit via een aangesloten LocoNet centrale of moet dit hardwarematig (via een PIC programmer) worden gerealiseerd?


Peter,

Om een antwoord te geven op je vraag: hierbij een deel van de tekst die ik al langer klaar heb om de schakeling te beschrijven:

'Instellen Device bereik:


Dit is zeer eenvoudig gehouden. Bij eerste gebruik zal een terugmeld Device bereik ingesteld zijn van melder 1 tot 32. Als je nu een brugje zet op PROGRAM ADRES DEVICE en je toetst op de INTELLIBOX II schakelcontact 2 in (of uit), en je verwijderd het brugje, dan zal de Device bereik ingesteld zijn voor melders 33 tot 64. Schakelcontact 3 stelt een Device in voor melder bereik 65 tot 96 enz… Het komt er op neer dat elk schakelcontact een bereik van 32 melders instelt. Maximaal kan je met schakelcontact 128 een Device bereik instellen voor melders 4065 tot 4096. Je moet er op letten dat tijdens het instellen van een Device bereik er geen ander gebruiker (PC bijvoorbeeld) ook schakelopdrachten doorgeeft op LocoNet.
'

Peter,
De reden waarom ik nu overschakel voor de testen van LocoNet met printjes is om na te gaan wat de software doet als er botsingen zijn tussen verschillende LocoNet gebruikers die gelijke tijd het net gebruiken. Dit deel van de software testen kan ik niet op de PIC simulator. Vandaar mijn woord gebruik, 'tot er rook uit komt'.  ;) Maar ik weet dat je kan volgen als ik het over botsingen (de nederlandse term ) heb...

Geert


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 mei 2015, 21:59:35 pm
gerolf W3 is de variabele die word ingelezen door pulsein op poort 3 van de processor
als de waarde minder dan 800 is moet relais 1 aan trekken
als de waarde groter is dan 900 moet relais 2 aan trekken
voor de rest als de waarde van W3 tussen 800 en 900 zit moet er niks gebeuren
die else kan er eventueel nog wel tussen uit


 Device 12F629
                   
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON,  MCLRE_OFF
 All_Digital TRUE                                           
 Xtal 4
 Declare PortB_Pullups On
OSCCAL = 67             
PORTB = %11111111             ;Maak alle poorten van PORTb hoog
TRISB = %11111111
 
Symbol relais1 = GPIO.0
Symbol relais2 = GPIO.1
Symbol led = GPIO.2
Dim W3 As Word

Clear
DelayMS 10

While 1 =1
PulseIn GPIO.3,1,W3
Toggle led             
If W3 <  800 Then
relais2 = 1
relais1 = 0
  EndIf
If W3 >  900 Then
relais1 = 1
relais2 = 0 
 EndIf

Wend

de delayms die staat daar op zijn plaats wand die zorgt dat er na het opstarten eventjes tijd is om de impulsen van de ontvanger te stabiliseren en dat moet maar 1 keer per opstart gebeuren
het kan zijn dat die tijd langer moet worden als de pulsen langer tijd nodig hebben om te stabiliseren
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 12 mei 2015, 09:20:42 am
Device 12F629

...
 Declare PortB_Pullups On
             
PORTB = %11111111             ;Maak alle poorten van PORTb hoog
TRISB = %11111111
 

Net nog is nagekeken in Data sheet 12F629, deze heeft geen PORTB...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 12 mei 2015, 10:00:21 am
W3 is de variabele die word ingelezen door pulsein op poort 3 van de processor

En wordt die door die instructie dan met 1 opgehoogd, of hoe geraakt hij aan de waarde 800/900 ?

Het is toch de bedoeling dat die relais reageren op servo-PWM-pulsen, niet?
Dus zijn 800/900 de drempels tegenover 65536 van een volledige periode?
... en je while-wend-lus duurt 1/65536 van diezelfde periode?

Zit er geen interne timer in die Pic ? Dat lijkt me veel makkelijker werken ...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 12 mei 2015, 11:43:07 am
hoe geraakt hij aan de waarde 800/900 ?

Een RC besturing geeft een puls die in lengte verschilt afhankelijk van de uitslag van de stick.
Stuurknuppel geheel naar je toe geeft bijvoorbeeld 500
Midden is 850
Geheel van je af is misschien wel 1200

Omdat de midden positie niet zo nauwkeurig is neem je een wat bredere band waarbij er niet moet worden gereageerd bijv: 800-900.

Raf probeer dit eens:

If W3 < 800 Then relais1 = 0
If W3 >= 800 Then relais1 = 1

If W3 >  900 Then relais2 = 0 
If W3 <= 900 Then relais2 = 1

Verder zet je met die TRISB alle poorten als input (=1), je moet wel de led en die relais als uitgang (=0)  benoemen;
TRISB wordt dan 11111000

Kijk in hoofdstuk 3 in:  http://ww1.microchip.com/downloads/en/devicedoc/41190c.pdf  voor benoemen van in- en uitgangen




Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 12 mei 2015, 13:44:59 pm
hoi harm

ja zo kan het ook
en ik heb die poorten veranderd al nam hij portb wel aan
nu is het zo
GPIO = %11111111             ;Maak alle poorten van PORTb hoog
TRISIO = %11111000

nu heb ik het zo gedaan en alles compilde dus het zou goed moeten zijn
 Device 12F629
                   
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON,  MCLRE_OFF
 All_Digital TRUE                                           
 Xtal 4
 Declare PORTB_Pullups On
OSCCAL = 67             
GPIO = %11111111             ;Maak alle poorten van PORTb hoog
TRISIO = %11111000
 
Symbol relais1 = GPIO.0
Symbol relais2 = GPIO.1
Symbol led = GPIO.2
Dim W3 As Word

Clear
DelayMS 10

While 1 =1
PulseIn GPIO.3,1,W3
Toggle led             
If W3 < 800 Then relais1 = 0
If W3 >= 800 Then relais1 = 1

If W3 >  900 Then relais2 = 0 
If W3 <= 900 Then relais2 = 1


Wend

en hoe gek het ook klinkt maar om de pullups aan te zetten moet ik portb kiezen
want anders werkt het niet
misschien doe ik iets verkeerd maar ik krijg het met geen stokken gecompiled als ik het anders doen

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 12 mei 2015, 13:49:56 pm
Gerolf

telkens deze instructie aan gesproken word (PulseIn GPIO.3,1,W3 )
word de huidige status van de pulsbreedte in W3 geladen
daar ik twee relais aan stuur maakt de frequentie niet zoveel uit ze behouden hun laatste stand
later kan ik nog een fail safe bij programmeren als het signaal moest weg vallen
maar daar heb ik wel reeds over gelezen maar dat is niet zo eenvoudig
omdat de pulsein reageerd op de op en neergaande flank van het signaal
komt er geen signaal dan is er ook geen reactie

de 12f629 heeft een interne clock van 4Mhz dacht ik daarom ook de keuze in het begin van het programma

gr raf die straks eens gaat proberen om 2 ledjes te sturen met een servo tester

 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Harm op 12 mei 2015, 14:06:53 pm
moet ik portb kiezen
 het met geen stokken gecompiled

Misschien herkent je compiler geen ander commando dan portb,
Ik heb echter het idee dat de pic zich niets van die portb aantrekt.
Mogelijk dat de sleutel:  OPTION_REG

bit 7 GPPU: GPIO Pull-up Enable bit
1 = GPIO pull-ups are disabled
0 = GPIO pull-ups are enabled by individual port latch values

er uiteindelijk alleen voor zorgt dat de pullups toch werken.
Met andere woorden; die portb is niet nodig als je al GPIO = %11111111 ingeeft.

Aldus Harm, die verder geen verstand van PIC's en hun databladen heeft.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 12 mei 2015, 14:08:32 pm
ok ik kan het gewoon proberen
maar als ik dus porta ingeef dan blijft die zwart en alleen portb word groen ???
dus word B toch wel erkend door proton

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 14 mei 2015, 22:22:47 pm


Een vraagje: stel dat je een baan hebt waar je reeds (vb) melder 1 tot en met 64 via een 'klassieke' S88 terug meldt.  De volgende 23 melders wil je met jou LocoNet terugmelder genereren.  Kan je de module eenvoudig op adres 65 (als eerste melder van je module) instellen en de module 'wijs maken' dat er slechts 23 van de 32 melders moeten worden gemeld?  Kan dit via een aangesloten LocoNet centrale of moet dit hardwarematig (via een PIC programmer) worden gerealiseerd?


Peter,

Om een antwoord te geven op je vraag: hierbij een deel van de tekst die ik al langer klaar heb om de schakeling te beschrijven:

'Instellen Device bereik:


Dit is zeer eenvoudig gehouden...


Geert, even een verduidelijking waarom ik dat vroeg.  Mijn testbaantje dient (diende) vooral om veel ervaring op te doen met het digitale gebeuren.  Ook het modulaire gedeelte kwam daarbij aan bod (gelukkig - dit jaar verhuis ik en wil ik mijn 'testbaantje' meenemen).  Wat mij bij die testen al vrij vlug duidelijk werd, is dat je je terugmelddraden/kabels best zo kort mogelijk houdt.

Je 32 ingangen lijken mij om die reden wat veel.  Mijn melders (koopmelders) zijn allen voorzien van 16 ingangen (Viessmann 5217 (http://www.rocousa.com/pdffiles/5217.pdf) en Rosoft S88-N (http://www.rosoft.info/S88-N.html) via een S88-LocoNet-interface (http://www.rosoft.info/s88LN.html) en recent verschillende S88 interfaces met ingebouwde LocoNet interface (http://5430.static.securearea.eu/Files/3/5000/5430/ProductPhotos/Large/136923541.png)).  Van de meeste van die melders gebruik ik slechts enkele (bij sommige 4, bij sommige maximum 10) ingangen; dit om de terugmelddraden zo kort mogelijk te houden.
Vandaar mijn vraag of de schakeling gelijk wel startadres kan krijgen gelijk en welke hoeveelheid aangesloten ingangen.

Mijn voorkeur gaat naar 8 ingangen.  Maar die bestaan niet en dus zal het voor mij ook zelfbouw worden.




Wel weer een dikke proficiat dat je het toch 'tijdkritische' LocoNet-protocol met een ingebouwde clockgenerator tot een goed eind weet te brengen.  Ik ben misschien wat lui en gemakzuchtig en gebruik daarop een 18F met 20MHz kristal opgepept tot 48MHz clock.




...Maar ik weet dat je kan volgen als ik het over botsingen (de nederlandse term ) heb...

Met die 'collisions' heb ik tot nu toe nog geen last gehad.  Het protocol is dusdanig uitgedacht dat eventuele botsingen op een 'volwassen' manier worden opgelost (verschillende klokken in de verschillende interfaces zorgen uiteindelijk voor eentje die het 'collision-duel' wint).

Ik heb al verschillende (langdurige) metingen uitgevoerd op het protocol tijdens het automatisch rijden op mijn testbaantje en ik kom toch duidelijk tot de conclusie dat in mijn geval de bandbreedte nauwelijks wordt benut.  Dat betekent dat ik nog heel veel kan uitbreiden voor ik aan de LocoNet-limiet kom...

Nog veel succes met je werken en hou ons op de hoogte!


[EDIT] de links zijn niet als reclame bedoeld; het zijn alleen producten waar ik heel tevreden van ben  (zowel van het product zelf als van de support!).
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 13 juni 2015, 14:48:12 pm
Testen testen en nog eens testen. Een zelfbouw terugmelder met massadetectie via LocoNet bus loopt vlot. Ik test deze via een Intellibox II en JMRI software. Elke 10s vraag ik de status op van elk van de 96 terugmeld ingangen. (32 per print) Tot hiertoe geen probleem meer vast gesteld met vast lopende LocoNet bus.

zie filmpje (https://youtu.be/hHuOAluR7to)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 13 juni 2015, 15:03:54 pm
ook een stuurprintje in elkaar gevodderd en het werk nog ook
https://www.youtube.com/watch?v=6d8jpeYt5kk
eerst was er een probleem omdat de jitterende servo's te veel stroom trokken maar een condensator heeft dit mooi opgelost

volgende project alweer in de maak
een rokende schoorsteen met een ventilator die mee gestuurd word om zo meer en minder rook te krijgen
https://youtu.be/cY9nUbdvmrA

roken doet het wel genoeg en nee geen standaard rook ding want die roken niet hard genoeg
hier kan 1 liter vloeistof in en als het niveau te laag word stop de weerstand en iets nadien de ventilator
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 15 juni 2015, 09:48:00 am
even een snelle update :  wisselbediening met Master en 3 Slaves :

- display module en LED signalen   : check
- akoestisch signaal  bij fouten :  check
- Master / Slave communicatie   :  check
- status updates via EEProm   :  check
- Eeprom Synchronisatie met PC  : check
- Slave Hard reset mogelijkheid vanaf master : check
- werking via PC interface   : check
- werking via een 4x4 key membraan toetsenbordje :  check
- werking via een infrarood zapper  (van een Telenet digicorder)  :  Check


Nog te testen  (wel al geprogrammeerd) :   
- Werking via een DCC signaal.

Nog te programmeren :   
- integratie met een  RFID  sleutelhanger voor het opstarten van de installatie en voor het opslaan van presets / defaults
- enkele module libraries maken met weerkerende functies om main programma te vereenvoudigen



... en dan kan het inbouwen en bekabelen beginnen...  Oh boy !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: eve op 15 juni 2015, 09:57:46 am
Auto voor modelspoor-electronici :

(http://www.pakwheels.com/forums/attachments/cool-classic-cars-latest/991398d1362573405-60-coolest-cars-past-60-years-1967-checker-marathon-front-view_2le_pakwheels-com-.jpg)

Erik
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 15 juni 2015, 12:02:10 pm
Helemaal mijn stijl !! Wat een klasse bak, Erik .  Bedankt voor deze liefdevolle attentie :-) :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 06 september 2015, 11:30:51 am
Eindelijk slecht weer, dus tijd voor ...  8)

(https://lh3.googleusercontent.com/uGs5mi3NooDC8To0WZSYX5wQA8aGIHnGper1qRuJ4cMor6sMQ0dyDD0DbEfKDLIzZkQYlmwCLKgx19d1RaVcCB7tEsw8jrdsNnSricwv9fP8QLR-gK4x275xtn3BRCqtW-a7gY404ypXuY49-cKhhYX9HQEbsexYT-uN_F62XrTqmMTj2JiM9dTdhH0b78W7b8Q_f4lHzHLVXw78QTvlGLC9gNp_iTroOpCQa6l_q8ujDxZSsHck0knembR01n7aOLAjNWCdx-rG1IZtasHH2v_HCWTIxS2C4h-O2qgSgCLbcND8-SXed-7L-G2d0gJ5Mu7fRZjvw93-u5nV0IhdNM3_jqDli6BVNdjJoCOdJDtOjVGoUMZ7pYN3mr2XF2NVATSCsUyxZyWlmAGEuoeXMrC5-YUFVYozDZDqTYWgLmW9KykwcG5QHfwJG0sDGpWXzfSkQhiTXofwoC2fQzFCXLCgbVFzzcrz5vQsprwvgSZGX82SFmFIWTb3eCKvBXu4K4QLx72HX1pzYP2U10Hcc4U=w600-h360-no)



(https://lh3.googleusercontent.com/Q6pZrTdoeU9MlE9j3HlUua9JXNLcv2sKierjCQNJN-N8ijPAGslg0utJ5p34GbDnkX_wQgUI4KjxfpgI6P6tosX2uEwST9XluezEtjcUlRCUXEaWDRTXYriWpj2G9gq4lqPct3G1AQhwLumeIMnRcTX-VBHiTFYxUoU2_bMV65uNasucxgO3K-mCzaEL_zQdOgUwX99wxjMa82E6aa2C7u6rV8JwbFc-bfpr8E0UbhkljEHPSV5nLHTsZeKvRIvm7dwnnk8R8AdlgZPKTbg8iyKe8UpOH222td2L91EB35dpyCPnmSpnnRVPRsu8JtMLRc2h3rJZDEWjvrwwIcy5ELiro2zYdn57qSInJgxDaWPdEBL3khpV6psyxKk8ZFkf679gbLDVQluhvr3KSE0AWiL44MQWdZGt8QuTTax_vAEHT5fd9poBITpLTs4SdwWgYK1P3RsgEaMTK4RECQ9kiOEwfNqonMkg6U7NVbloHbn27wgrHPmGGpvoclBlWhuJQE0C2ddbYRKJz0J5Bdwm7lo=w600-h301-no)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Metpetergaathetbeter op 06 september 2015, 14:20:43 pm
verkeersborden gemaakt ?  ??? :-\ ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 30 oktober 2015, 17:06:40 pm
Testen met S88 LocoNet Master.

Heb je geen LocoNet aansluiting op je centrale, maar wel een S88 bus.... 

(https://lh3.googleusercontent.com/2ZMnFktkOHLE1uGlzdPPhoF9CUYyQlDmE3nuL4BPtn_0rNs4P-PWSClywY-0byAvrjSrEVz2-HuG4JIvQ5uIQ77VC4MixVALTcZfU5uPZ5IvPe6R6dxpnyhV5xRRBeW7wqCfMgnQixEWdfZ-WjZYM99a4U5AXb2IBOkRm-mNJ--bYEANDJMvWz1nsULOBFc08jVkprbnmVWZhk3BVk9yFxPmoTiWSuF5nzjpAwm1PEXZHlHabWp48J44wyvQVk8pw8fDuvc2TmsnwaF-HSVYe27vbB-y1uEzo2qufpGvvC0nkM6RN210_pJOQYzGFia4DdPDx_WOs-yKQ_lm8_mz0oSKjg5ZRNdVihpPe5L8WhDrh6c-DyBxNVUQ5zmIZSA3dXz0m3FuU_3CXhpnsdhzukmrnoAaKO5x5kd6pY6iGv1dFxXU9IbyeH0c1MnKSVatjF_rpJTIDcENwLwnoFcHyiAnDn5xR-WOx1vm1DONoBTg_oC5NMrNJ-Dmk_pW0j6onrSzUxMwD8ZDl6x2uOw--qao9E_iMYE84pjcGSGiW0M=w1022-h573-no)

(https://lh3.googleusercontent.com/lWNWtJiZrKEj73pmZ9_TToPvDNjVUAinSQCifL5IwF7ib7_zPqoKqQtQR-hl7-YYnp2uGHckh5hgFajkbYKpZO2sn-pVPzH_U7cP2qgyh_AarxKpa7y6UNcL6OhG-Exhmu34hT2jztnT-yuvTMjDg3Bk2Ws3no9ux6tmXDDMwycBYZsOqZGTXk1_-ekBgYnBn8jJg1DZAd2FmbrD-U_kKybYwQnBTIePgiqdY8T0qwBS4kHkhK2YNtDEjortQIR4fGgAOTVGm6aWOZou3YkICposQd39ktpyJc9D4qHU330f1QFMsz1wVpkiEocWFO4EZwCVambYHlaQ4aQJz8lg1OB0mxrh0T3iyioQhBMvteCLtdrUHzA0Aw8u5kTn9Ahi0ylXymYFmmQgmiPuJzNcmMUz1H2oYt7t2sxuUIgnPMlzhXLQ2czANh91e_7F-R2ak7bn1jojDsd5dFUeUw8Pj7OPJi5AsYVy3yVscAFij7_pvMQKA4z0T9kHat0Xxor1smuOWXWdbPe5oibyvHOoNUWAa_KyvdFOXF4AIIvQc0s=w742-h425-no)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 30 oktober 2015, 17:16:51 pm
geert waarom die twee 10K weerstand netwerkjes
voldoen de interne pullups voor deze schakeling niet voldoende

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 30 oktober 2015, 17:25:23 pm
Enkel Port B0 tot Port B7 (pin 33-40) heeft interne pull up weerstanden. Waarom de andere niet? Een tekortkoming zeker...

Maar de PIC µC hebben ondanks dit gebrek toch mijn voorkeur. (eerlijk gezegd zie ik het niet meer zitten om over te schakelen op een ander µcontroller systeem)  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 30 oktober 2015, 17:29:10 pm
ha ok de 16F reeks heeft ook maar op 1 poortreeks pullups dacht ik
en inderdaad ik ben zeer tevreden over deze series µprocessoren

veel zijdig en ik kan er alles mee wat ik tot nu toe ben tegen gekomen
beetje meer geheugen zou wenselijk zijn want de 16f628A heeft maar 2 K en voor sommige programma's zou ik graag wat meer hebben

gr raf   
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 31 oktober 2015, 09:48:52 am
Ik zie geen afbeeldingen, Geert (en Peter blijkbaar ook niet)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 31 oktober 2015, 10:19:16 am
Hoe geen afbeeldingen...  Als dat zo is dan stop ik met afbeldingen te posten via google


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 31 oktober 2015, 10:33:53 am
Op de vorige pagina zijn de afbeeldingen niet zichtbaar - een pagina eerder wel  :-\
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 31 oktober 2015, 18:22:42 pm
ik heb de afbeeldingen wel gezien maar nu niet meer want anders kon ik niet reageren over die  10K weerstanden

dus ??? ze zijn schoeppes die fotoes
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PietB op 31 oktober 2015, 21:28:22 pm
Ik zie ook geen afbeeldingen.
Sorry Geert.

grt Piet.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 01 november 2015, 09:19:00 am
Ik zie wel afbeeldingen. Ik zie ook roze oliefantjes... Na het feestje gisteren  ;)


Ik zal dit weekend de afbeeldingen verplaatsen.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: efl045 op 01 november 2015, 15:12:51 pm
Strikt genomen zie ik wel afbeeldigen, al zijn het maar lege vierkantjes  :)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 06 november 2015, 18:38:06 pm
Om het mij gemakkelijk te maken een link naar mijn huidig project(en), hoef ik dat hier niet over te typen  8)

Zelfbouw elektronica projecten met LocoNet (http://users.telenet.be/RedDeBist/MBAAN/LocoNet projecten.htm)

Veel leesplezier  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: loebaske op 06 november 2015, 18:51:06 pm
Een vraag aan de persoon die het zou kunnen weten...
Kan men het Piko digtal en Itrain kombineren??
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 november 2015, 08:08:04 am
Om het mij gemakkelijk te maken een link naar mijn huidig project(en), hoef ik dat hier niet over te typen  8)

Zelfbouw elektronica projecten met LocoNet (http://users.telenet.be/RedDeBist/MBAAN/LocoNet projecten.htm)

Veel leesplezier  ;)

Geert

interessant, alles bij elkaar....  fijn !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 10 november 2015, 08:58:19 am
Een vraag aan de persoon die het zou kunnen weten...
Kan men het Piko digtal en Itrain kombineren??

Ik werk met geen van beiden, ik zal het niet weten.

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 15 november 2015, 18:57:35 pm
Om het mij gemakkelijk te maken een link naar mijn huidig project(en), hoef ik dat hier niet over te typen  8)

Zelfbouw elektronica projecten met LocoNet (http://users.telenet.be/RedDeBist/MBAAN/LocoNet projecten.htm)

Veel leesplezier  ;)

Geert, volgend jaar  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 17 november 2015, 09:30:15 am
(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xaf1/t31.0-8/12238044_1043726772346138_9014245325160254906_o.jpg)

kan dit zou opgebouwd worden
het zijn P channel fet's die ik hier gebruik
die van 12 volt werkt als pwm waarmee ik de snelheid van de loco's mee aan pas op de desbetreffende stukken baan
die van 18 volt dient om te kunnen schakelen (marklin systeem)
deze print heb ik maar 1 keer nodig omdat deze op het rangeer terrein gebruikt gaat worden
de twee fet's worden normaal nooit tegelijk geschakeld en in het programma is er een rust pauze tussen het schakelen van 100 Ms
de sturing is met druk knoppen voor zowel op trekken /afremmen/schakelen en nood stop
ik hoor het wel
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 17 november 2015, 10:16:37 am
Is een relais om om te schakelen niet eenvoudiger ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 17 november 2015, 10:24:46 am
gerolf ik weet het eigenlijk niet
dus gij zou een relais zetten tussen de 12 en de 18 volt
en dan dezelfde fet gebruiken om dit te schakelen
(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xpl1/v/t1.0-9/12003859_1043743125677836_4356430494308074700_n.jpg?oh=ce64ec7bae2242a2997f8e94fd89ec6a&oe=56ECAE7A)

ik heb niet alles getekend maar dan zou het er zo uit komen te zien
ben ik dan beter en goedkoper uit dan de vorige schakeling ????
een relais kan na een aantal jaren beginnen te haperen denk ik

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 17 november 2015, 10:30:19 am
Raf, probeer eerst eens je tekening voor te stellen met de symbolen zoals ze vastgelegd zijn. (dan mag je nog kiezen tussen Amerikaanse of Europese)

Je weerstand is voor mij een zekering.
Je dioden zijn voor mij pijltjes, ik weet wel wat je bedoeld, maar toch...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 november 2015, 10:38:15 am
wat hij  bedoelT   dan  ?
Symbolen...   Taalfouten......
Is dat niet een beetje hetzelfde ?   Raf doet zijn best om het uit te leggen.

@Raf: waarom zou je een FET gebruiken om een micro relais je te sturen, als je dat kan met bvb een  2N2222A  simpele NPN  transistor ?

En ik denk dat Gerolf bedoelt dat je makkelijker je bovenste FET  in je originele schakeling kan vervangen door een relaisje en een kleine "tor".  De rest blijft dan zoals het is  (denk ik, hee ....)

Als alternatief kan je het relais laten "wisselen" tussen het uitgangssignaal (PWM) van de  onderste FET  en de  "vaste"  18V  .  Op die manier ben je ook meteen zeker dat bij het omschakelen de PWM spanning van de sporen weg is.

Ik heb hier nu niet direkt een tekenprogramma voor elektrische schema's bij de hand....
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 november 2015, 10:51:11 am
zo iets dus :    (de 1N4001 is een blusdiode om de 2N222A te beschermen tegen spanningspiek van de relais spoel)

(http://img.photobucket.com/albums/v611/danimieghem/switcher_zpstojxpfdj.jpg) (http://smg.photobucket.com/user/danimieghem/media/switcher_zpstojxpfdj.jpg.html)


Ah, de geneugten van pen en papier,  iPhone, eMail , Photobucket en dan een link plaatsen op een forum.

WE ZIJN IN 2015./.....    dat zou toch simpeler moeten kunnen...
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 17 november 2015, 10:54:29 am
dat zou toch simpeler moeten kunnen...
Wel eens gehoord van Paint? Een simpel tekenprogrammaatje dat standaard in Windows zit.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 november 2015, 10:57:30 am
ja, maar voor zo een "vlugge schets" uit de losse pols is dat nog steeds omslachtig als je de symbolen moet tekenen.

Dit schemaatje duurde bij mij minder dan 1 minuut om op papier te kladden.   Doe het eens met eender welke tekentool.

Dat bedoel ik maar .  Thuis gebruik ik meestal  TinyCad en dat heeft de symbolen en werkt vlotjes.

@Raf : misschien je daar eens in verdiepen, het is een makkelijk programma en is gratis !!!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 17 november 2015, 12:03:13 pm
ja dus ikke snel getekend in paint
pijltjes zijn diodes en die weerstand wist je ook dus ik zie het probleem niet
niet iedereen heeft zo maar efkes een teken programma voor elektronische schema's op zijn pc staan 

eigenlijk is het door mij getekende schema het zelfde als het tweede op artisanale manier getekende
de blusdiode ontbreekt en de tor is een bc517 en de weerstanden en dergelijke ontbreken ook maar het was een principe schema

het enige verschil was dat ik de spanning op de fet om schakelde van 12 naar 18 volt en dus dat tweede schema is inderdaad beter
nu eens kijken of ik tijd heb om dat in elkaar te bakken en te testen
relais is aan boord
transistor ook
weerstand ??? dacht het wel
diode's van de rol
printplaatje en voetjes
fet ook aanwezig dus tegen vanavond een werkende print

bedankt voor de input

gr raf
 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 november 2015, 12:44:09 pm
SUK-6  er mee Raf   (succes).
Da komt wel goed !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 17 november 2015, 12:59:43 pm
rat ??????? type foutje zekers LOL
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 17 november 2015, 13:02:50 pm
SORRY.    RaF
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 17 november 2015, 14:07:50 pm
niet erg hoor LOL
maar ja je weet hé der zijn der die op de T en de D letten hé

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 15:13:02 pm

een probleem met deze schakeling
wanneer ik de 18 volt aan de trafo aan sluit dan staat er zonder dat de schakelaar bedient word 18 volt op de 12 volt aan sluiting
iemand een idee dit te verhelpen
(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xtp1/t31.0-8/12241033_1044264218959060_5017459415495783661_o.jpg)

het is dus een trafo met een afgetakte wikkeling
de 12 volt komt ergens midden de trafo uit en daarna de 18 volt op het einde
de massa is dezelfde voor alle twee
sluit ik de wisselstroom kant aan van de 18 volt dan staat er meteen 18 volt op de 12 uitgang terwijl dit normaal niet zou mogen gebeuren
ik probeer de stromen te volgen in de gelijkrichters maar ik kom er niet uit wijs
iemand een idee
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 18 november 2015, 15:48:18 pm
Als je een scoop moest hebben, dan zal je zien dat op de +12V uitgang t.o.v.  gemeenschappelijke  min, je halve sinussen zal zien die afwisselend +12V en +18V zijn.

De onderste bruggelijkrichter blijft nog altijd voor een deel werkzaam. In dit geval het gelijkrichten van de negatieve fase uit te transfouitgang 21V.

Hoe dit verhelpen, moet ik is nagaan later...

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 15:53:30 pm
ha dan ga ik de scoop er direct aan hangen en eens kijken
het is wel een oudje maar hij doet het nog wel
misschien een dikke condensator plaatsen dat dit zou willen helpen


gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 18 november 2015, 16:02:19 pm
dat schema lijkt me helemaal fout op het eerste zicht....

Meet eerst eens aan de  AC zijde van de transfo,  zoek de gemeenschappelijke draad en dan de 12V en 18V  aansluitingen   (maar je spreekt ook van 14 en 21 ???)
En probeer dan stap voor stap verder te werken, want volgens mijn bescheten mening zitten in je schema zo veel sluipwegen dat het niet anders kan dan mis lopen !

Het verbinden van die 2    "min" kanten van de gelijkrichters is een gevaarlijke stap.   Het moet in principe kunnen, maar ik zou toch heel voorzichtig zijn want je kan sluipwegen maken.
Ik heb op dit moment weinig tijd om echt diep er op in te gaan, dus schiet me niet af als ik een fout maak.

allee dan, volgens mijn  "quick and dirty" schema programma :

(http://img.photobucket.com/albums/v611/danimieghem/IMG_8614_zpsqtigwqba.jpg) (http://smg.photobucket.com/user/danimieghem/media/IMG_8614_zpsqtigwqba.jpg.html)


BTW, in hoeverre dit echt nog bij Microcontrollers hoort weet ik ook niet, eerder bij KISS electronica ??

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 18 november 2015, 16:05:05 pm
Er zit een principiële fout in het schema. De beide bruggelijkrichters hebben een wisselspanningspoot gemeenschappelijk, maar daarnaast hebben ze ook de min-poot gemeenschappelijk. Dat kan niet. Het is het een of het ander, maar niet tegelijk.

Een dikke condensator gaat dit niet verhelpen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 18 november 2015, 16:11:16 pm
Een veilige oplossing is 1 transfo bv 24V, 1 bruggelijkrichter, een flinke elco, een LM317 spanningsregelaar waarbij je de twee weerstanden zodanig berekend dat je 12V hebt.

Een relais met 1 schakelcontact die een extra weerstand parallel schakelt over de weerstand net na de uitgang LM317. De gemeenschappelijke waarde van deze weerstanden moet voor 18V zorgen op de uitgang van de LM317.

Wel een klein beetje rekenwerk.


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 18 november 2015, 16:14:32 pm
Er zit een principiële fout in het schema. De beide bruggelijkrichters hebben een wisselspanningspoot gemeenschappelijk, maar daarnaast hebben ze ook de min-poot gemeenschappelijk. Dat kan niet. Het is het een of het ander, maar niet tegelijk.

Een dikke condensator gaat dit niet verhelpen.

KLOPT helemaal
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 16:23:23 pm
dit hoort zeker nog bij microprocessors want dit komt hier achter aan geschakeld

(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xpl1/v/t1.0-9/12003859_1043743125677836_4356430494308074700_n.jpg?oh=ce64ec7bae2242a2997f8e94fd89ec6a&oe=56ECAE7A)

de pic en aanverwanten moet ergens zijn spanning vandaan halen hé
en de te schakelen spanningen moeten dus uit deze trafo komen
de pic maakt van die 18 volt 5 volt om zich zelf te voeden dus ik kan van die 18 volt geen 21 volt maken want die 7805 gaat dat niet over leven


dus ik moet 1 massa poot los maken aan de gelijkrichters dat kan ik direct proberen op het baantje wat ik nu op de living tafel heb liggen
madam is winkelen dus het kot efkes vrij
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 18 november 2015, 16:27:13 pm
madam is winkelen dus het kot efkes vrij

Zie maar dat "het kot" er nog staat en niet is af gefikt tegen dat ze terug komt, met die "risky" experimenten !!!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 16:29:09 pm
@ dani je hebt wat spanningen verwisseld

de trafo geeft 18 en 21 volt uit
de baan krijgt 12 en 18 volt
waarvan 12 volt de rij spanning is en ook de pic's hun spanning uit maken (5 volt met 7805)
en de 18 volt is de omschakel spanning voor het marklin systeem

de 12 volt word pwm gestuurd door de pic en de 18 volt is 1 schakel puls van 10 ms om de loco om te schakelen wat rij richting betreft
tijdens het om schakelen word de pwm op 0 gezet en moet je terug gas geven om te kunnen vertrekken
het is mogelijk om bij vol gas te schakelen maar dat doe je als normale mens niet dus heb ik dat ook niet mee geprogrammeerd al kan dat later nog bijgezet worden

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 16:35:01 pm
(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xtf1/v/t1.0-9/11139962_1044295162289299_4483303355243655902_n.jpg?oh=136238fa2b313e80ab508dfad54ab16f&oe=56F7FE77)

zo ik heb de massa van de 21 volt weg gehaald en nog steeds het zelfde probleem
de loc schakelt nog steeds om als ik de 21 volt aan sluit

nu ga ik proberen de gemeenschappelijke massa aan de spoor kant weg te halen en kijken wat er dan gebeurt

tot zo
 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 16:42:21 pm
ok hoe het werkt weet ik niet maar nu werkt het wel
ik gebruik nu voor de 18 volt schakel spanning maar een halve gelijkrichter
(https://fbcdn-photos-e-a.akamaihd.net/hphotos-ak-xpa1/v/t1.0-0/s480x480/12239655_1044299375622211_2971234593173528036_n.jpg?oh=cd1326ba6f638f9b7639a3764eabd40d&oe=56F9F8F2&__gda__=1458283575_fdd38490cb0f55d724cab5d79d705a4d)

nu de scoop er gaan aan hangen om te kijken hoeveel er gelijkgericht is geworden en hoeveel niet
een paar condensatoren er achter en dan zou de zaak ook nog afgevlakt moeten zijn want de processoren printjes doen dat wel zelf maar je kunt nooit een condensator te veel hebben op een voeding

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 16:49:59 pm
(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xpf1/v/t1.0-9/11988478_1044302468955235_3916656346052342290_n.jpg?oh=ccb34a5a3e1b14f4c1a8192263a475c0&oe=56F53698)

een beter schema en zo werkt het nu op het ogenblik

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 18 november 2015, 16:54:51 pm
Logisch dat het nu werkt. In de bovenste gelijkrichter is nog maar 1 diode actief.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 18:55:39 pm
zo heel de schakeling werkt nu de processor er in en de stuur eenheid aan sluiten
alleen waar heb ik die stekker weer gelaten
er is nog een weerstand naar de + 18 volt gemoeten om de fet helemaal tot rust te laten komen
want anders bleef de loco een klein beetje staan brommen
een 220k deed dit ook naar het verleden verwijzen
natuurlijk geen weerstand van 220k in huis dan maar 2 x 110 er ingestoken er was plaats op de print
en eens deze is weg gewerkt in de baan zie je ze toch niet meer

morgen proberen een filmpke te maken hoe alles werkt
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 18 november 2015, 19:16:47 pm
Niet zo vreemd dat de 18V nog staat te brommen. Die wordt nog steeds enkelzijdig gelijkgericht.
Ik zie dat je na mijn vorige opmerking nog een verbinding hebt toegevoegd, maar die doet niks.
Het schema blijft een gedrocht, en je krijgt het alleen maar goed door twee trafo's te gebruiken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 18 november 2015, 19:36:11 pm
klaas sorry maar alles werkt nu zoals het moet
zie hier het laatste schema en ook al de gemeten spanningen

(https://scontent-fra3-1.xx.fbcdn.net/hphotos-xpt1/v/t1.0-9/12234918_1044347845617364_6931299613063791924_n.jpg?oh=7be28be72e9051d688542e7537bba207&oe=56EC15BF)

maar dus het werkt
ik kan geen twee verschillende transformatoren nemen op dit ogenblik maar als de grote transformator in gebruik word gesteld dan heb ik 5 onafhankelijke wikkelingen en ben ik helemaal van het probleem verlost
maar nu begin ik pas met inbouwen van de electronica dus er is nog niet veel klaar en ik moet ergens beginnen
nu rijd ik op gelijk stroom met een normale marklin trafo waar mee ik ook nog de snelheid kan regelen en schakelen
ik kan ineens heel de baan laten stoppen ingeval van nood en als de electronica word ingebouwd dan komen er overal nood stop knoppen waarmee ik desbetreffende secties kan uitschakelen indien dit nodig moest zijn
maar dit is nu nog niet het geval en dus moest ik een oplossing vinden voor het probleem

alle electronica neem van die 16.80 volt ook meteen zijn stuur spanning zodat ik 4 secties heb van 16.80 volt die gescheiden zijn
het enige waar ik moet kunnen schakelen is in het verzorgings station en de rangeer sporen en dat is de enige plaats waar ik dus deze problemen heb
zoals je kunt zien kloppen de spanningen ook niet want een wisselspanning van 12 volt word gelijkgericht 1.4 x 12 = 16,8 Volt .
en ik heb 18 volt wissel dus de uitgang zou nog hoger moeten zijn
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 18 november 2015, 23:45:48 pm
...... want een wisselspanning van 12 volt word gelijkgericht 1.4 x 12 = 16,8 Volt .
en ik heb 18 volt wissel dus de uitgang zou nog hoger moeten zijn
Dat klopt niet. De gelijkgerichte spanning wordt pas 1,4 maal zo groot als er ook een afvlakcondensator aan zit. En die zie ik in jouw schema niet.
Als het goed is meet je een spanning die ongeveer 10% lager is. Dus 18V wisselspanning geeft 16,2V gelijkspanning. Dat komt omdat je bij wisselspanning de effectieve waarde meet, en bij gelijkspanning de gemiddelde waarde. Het verschil daartussen heet de vormfactor, en bij een sinusvormige spanning bedraagt dat verschil ongeveer 10%.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 19 november 2015, 09:22:09 am
ok klaas bedankt dat wist ik niet omdat ik altijd wel zo een condensator zet
hij is niet getekend maar hij staat er wel
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 25 november 2015, 21:16:38 pm
Via een zeer eenvoudig door iedereen zelf te maken schakelingske (een stukje strokenprint enkele weerstandjes een transistor een spanningsregelaar 78L05 een 9V baterij en een PC met COM poort), de deur open zetten om PIC microcontrollers te voorzien van (HEX) code.

Ik heb via reacties al ondervonden dat er wel vraag naar is...

EDIT: het zit nog in testfase. Later meer hier over.  ;)


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 25 november 2015, 21:43:15 pm
het ziet er niet uit maar het werkt
https://www.youtube.com/watch?v=NcCOm9EqWQo
volledig stroomloos met nood knop
dit is voorzien om heel de baan spannings loos te maken want die loopt door naar elke andere knop en elke processor
zo kan er van verschillende plaatsen rond de baan ingegrepen worden als er iets fout loopt
bij het schakelen van de rijrichting word eerst als de loco niet stil staat gestopt en daarna omgeschakeld waarna de verlichting terug gaat branden
het aan zetten van de verlichting  lang voor de loc gaat rijden
versnellen en vertragen tot de gewenste versnelling

dit zelfde programma word in gewijzigde vorm in de signalen verwerkt alleen deze kunnen niet schakelen om achteruit te rijden
https://www.youtube.com/watch?v=UxbZr5caFws
hier met de rangeer loc die normaal gaat gebruikt worden

en hier met wat wagons er achter
https://www.youtube.com/watch?v=9pmBpH4aMRw
het verbruik met en zonder  wagons liep niet zo heel hoog op en bleef ruim binnen de perken van de eind fet
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 26 november 2015, 08:43:25 am
volledig stroomloos met nood knop
dit is voorzien om heel de baan spannings loos te maken (...) zo kan er van verschillende plaatsen rond de baan ingegrepen worden als er iets fout loopt
Toch opletten met abrupt stoppen. Bij lange treinen kan dit een ontsporing veroorzaken.
't Is heel wat complexer om te maken, maar een noodremming (op 2 à 3 seconden stilstaan ipv ineens) is daarom beter
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 26 november 2015, 09:28:56 am
daar heb ik een andere knop voor
nood stop is inderdaad gevaarlijk maar noodstop is alleen in nood gevallen
als er bv een trein ontspoort en er een andere bovenop zou knallen
dan is de schade  erger dan een nood stop maken
het is niet moeilijker want het is gewoon efkes herprogrammeren
led1 = 1
  Duty = 0
 HPWM 1,Duty, 5000
 While s1 = 0            ;Zolang S1 is ingedrukt...
    Wend
   led1 = 0
 Return
dit is de originele geschreven code
test:
   led1 = 1
  For Duty = Duty To 0 Step - 20
if duty < 1 then duty = 0
 HPWM 1,Duty, 5000
 Next
 While s1 = 0            ;Zolang S1 is ingedrukt...
    Wend
   led1 = 0
 Return
de aangepaste code met nu een aftel loop tot 0
die aftel staat nu op 20 dus hij telt redelijk snel af .indien dit te snel is dan kan dat getal ook nog veranderd worden

maar dit is gewoon in elke processor afzonderlijk bij te programmeren en misschien niet van toepassing op elk signaal
de stukken waar zowiezo langzaam gereden word is dit niet nodig
maar in het rangeer /verzorgings station mag dit wel want daar gaan nooit lange treinen rijden op dit stuk

maar bedankt om het te melden gerolf dus daarom de programma regels aangepast

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 30 november 2015, 16:19:13 pm
even een experimentje met  Arduino - DCC -  LMD18200

Gewoon een soort "vertaler" maken tussen een  serieel commando van de PC en het besturen van treinen met DCC decoders.

De Arduino krijgt een commando van de pc binnen, check of het een geldig commando is en maakt daar een DCC signaal van hetgeen de H-brug dan versterkt en op het spoor zet.
(het pc commando kan je makkelijk vanuit een VB of eender welk programma of script genereren)

bvb :   #026010996#    dus met een masker   [#aaarlsssc#]

# is de begin en eind marker van het bericht   (formaat controle)
aaa = 3 digit DCC adres                                        --  026
r     = richting  (0-1 vooruit - achteruit)                  --   0
l      = lichten (F0    0-1  uit/aan)                           --   1
sss  = 3 cijfers voor rijstap (0..127)                        --  099
c     = checkdigit                                                   --   6


de checkdigit is een controle cijfer (zoals ook in barcodes gebruikt wordt)   Ik gebruik een hele simpele formule, namelijk de som van alle cijfers van het commando en dan de rest van de deling door 7.

in ons voorbeeld : 0+2+6+0+1+0+9+9 = 27   ==>    27/7= 3 met rest   6   vandaar check digit 6

(de restdeling is makkelijk met de "modulo" operator "%".      in dit geval   27 % 7 = 6)


Als een commando succesvol is gedecodeerd en naar de sporen gestuurd, komt een "ACK0" of "ACK1"  terug
Zoniet een  "NAK0" of "NAK1".     De   0 of 1  na de  ACK of NAK    geeft aan of de booster in ingeschakeld of niet en is dus terugkoppeling naar de pc of het systeem onder stroom staat.    Als thermische of stroombeveiliging van de  LMT18200 in schakelen, krijg je dus een 0, en ook wanneer je manueel op de arduino de schakelaar bedient voor  ON/OFF.

De eerste testen in de loop van de week zullen moeten uitwijzen of het werkt of niet...




ook nu weer ...   WAAROM ?    Zomaar omdat het kan .
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 december 2015, 13:45:21 pm
Eentje op verzoek...

Een defecte ASC-1000 van Roco (analoge PWM controller met extra functies) aan het leeg slopen  en bestuderen aan de hand van de manual hoe ik dit kan  "emuleren" met een  ATMega328P  microcontroller, de aanwezige hardware (potmeters, knopjes en LEDjes op het toestel) en de bestaande ingebouwde 30 VA  voeding,  zodat de functionaliteit dezelfde blijft maar het kapotte "binnenwerk" is vervangen door moderne technologie.   De  "Power trap" wordt een LMD18200  H-Bridge die tot 2,5 A kan sturen in PWM mode.

Het enige verschil (en dat zal de kritische kijker wel opvallen) is dat er in plaats van 7, maar 6 drukknoppen gebruikt worden.  De witte knop  zal "N/A" worden omdat deze defect is op het toestel.   In plaats daarvan zal de oranje knop gebruikt worden voor het omschakelen tussen  bediening met de draaiknop of de "up"-"down" toetsen.    De originele functie van de oranje knog (opheffen van de noodstop)  zal dus in dit geval verhuizen naar de "stop" knop die dus zowel  als  "stop"  en als  "resume" knop gaat dienen.

Het schema en de eerste versie van de software is er al.   Nu nog alles fysisch realiseren....
In de software zit echter momenteel nog geen "acceleratie" of "decelleratie" functie in, maar die worden nog geprogrammeerd.    Ik zal die potmetertjes gebruiken om de "grofheid" van de potentiometer en de drukknop stappen in te stellen.    De  "massa simulatie"  potmeter is buiten gebruik op dit moment.   Mijn "klant"  heeft me al te kennen gegeven dat hij deze zou willen gebruiken om de "maximum rangeersnelheid"  in te stellen in combinatie met een extra LED en drukknop  voor het in en uit schakelen van rangeermode.     1nderzijds kan dit ook worden gedaan door de "V-Max"  potmeter op het minimum te zetten zodat de "grote" knop tot max 10% van het totals snelheids bereik gaat voor een volle "slag", dus in feite een  "regelbare" rangeersnelheid.    Ik zit dan ook te spelen met het idee om die vierde kleine potmeter te gebruiken (zonder extra knoppen of LEDjes) om de maximale snelheid VOORUIT en ACHTERUIT apart te kunnen  instellen...  Dat lijkt me iets interessanter, maar dat is natuurlijk een kwestie van persoonlijk aanvoelen.

(http://img.photobucket.com/albums/v611/danimieghem/ASC1000-Emulator_zpsdwlqqax4.jpg) (http://smg.photobucket.com/user/danimieghem/media/ASC1000-Emulator_zpsdwlqqax4.jpg.html)






PS: mocht iemand interesse heben... het is OPEN SOURCE en ik zal het waarschijnlijk ook  op mijn   ATMEL blog posten.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 december 2015, 15:12:05 pm
ongeveer hetzelfde gedaan in basic alleen heeft die altijd rangeer snelheid omdat hij gebouwd is geworden voor het rangeer terrein
ik heb geen pot functie alleen up/down dan marklin systeem omschakelen en nood stop

https://www.youtube.com/watch?v=NcCOm9EqWQo
hier het proefrijden nog zonder de rangeer snelheid  omdat ik wilde zien tot hoe snel ik kan gaan
het voordeel is hier te zien na dat de rangeer snelheid is geprogrammeerd

https://www.youtube.com/watch?v=3iN40E6b_t0
de loco is van leds voorzien en die kan ik dus laten branden zonder dat de loco begint te rijden
het rijden is een 10 tal stappen verder met de up je hoort het ook aan het beginnen fluiten van de motor

maar het blijft wel plezant en ik kwam dus toe met 1 fet om te sturen (gelijkstroom 3 rail)waarbij jij natuurlijk een brug moet gebruiken
hoe doe je de kort sluit beveiliging van de eind trap
ik doe detectie over een 2E2 weerstand met een opto die dan de fet  direct spert  via het programma

gr raf en ik blijf volgen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 december 2015, 16:05:37 pm
de LMD18200 heeft zowel een thermische als stroom beveiliging ingebouwd.  Dus die regelt dat wel .
En met een extra input op de microcontroller kan ik de stroom waarden en temperatuur zelfs in de gaten houden in de software.   Die uitbreiding moet ik nog maken.   Ik heb nog net genoeg extra input pinnekes :-) :-) ;-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 december 2015, 18:14:25 pm
ik heb maar 1 poort nodig voor de schakelaars dan zou je ook een paar pinnekes sparen
met RCIN lees ik de weerstands arry in waar de schakelaars in staan en van daar verder met het programma

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 december 2015, 20:47:36 pm
Dat trukje ken ik wel ja... Maar in heb net genoeg ingangen.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 07 december 2015, 21:35:12 pm
LOL dan denk ik dat je de enige bent die ooit genoeg in/uitgangen heeft op een processor

gr raf en succes
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 07 december 2015, 21:52:00 pm
Het zit hem allemaal in het ontwerp en het denkwerk vooraf hee
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 december 2015, 17:48:19 pm
Software voor de 8-voudige snelheidsregelaar (het rechtop staande printje) aan het testen en debuggen:

(http://www.meb.gerolf.be/sturing/bm/auto/noodstop/NoodSnelTest.JPG)

... en het is de bedoeling dat die communiceert met de signalen uit de noodstop-print (op de PC-voeding)
... en kan babbelen met het LCD-kastje
... maar vooral mooi de snelheid van een trein regelt, afhankelijk van een seinstand (of noodremming)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 december 2015, 18:03:40 pm
roelof die loco is digitaal of is die ook analoog

bij mij lukt het dus wel reeds aardig om dat te doen
ik moet mijn baantje nog eens op tafel uit leggen als de madam nie thuis is maar nu met de komende feest dagen word dat wat moeilijk

gr raf en wanneer een filmpke
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 december 2015, 18:06:35 pm
Wie is roelof ?  ::)
Ik denk dat we verschillende verlanglijstjes hebben, Raf  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 11 december 2015, 18:11:17 pm
hahaha ja de g en de r zitten niet ver uit elkaar LOL

en roelof is een rosse met een dikke snor op het modelbouw forum
maar ja jullie namen trekken ook wel zo een beetje op elkaar hé

maar is die nu digitaal of niet die loco
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 11 december 2015, 20:19:19 pm
't Is een analoge loc. Dat had je uit mijn handtekening kunnen opmaken ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 12 december 2015, 08:09:04 am
ha ja zelfbouw

dus je stuurt met pwm je loco als ik het goed heb
kun je ook de verlichting laten branden zonder dat de loco gaat rijden
op een pwm van 10 Ms kan ik de lichten aan zetten want de motor begint maar te draaien bij 100 Ms
dus een echt stroom loos vak word het bij mij nooit in een station of aan een signaal
er blijft een pwm van 10 of max 20 op staan zodat de ledjes gewoon blijven branden
zie mijn filmpje over de rangeer loco

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Klaas Zondervan op 12 december 2015, 13:22:56 pm
Raf, ik doe dat al een aantal jaren. Geen gewone PWM, maar een HF blokgolf. Zie mijn website onder het hoofdstuk Permaloog.
Heeft overigens niks met microcontrollers te maken. Gewoon simpele elektronica.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 12 december 2015, 13:49:20 pm
ja klaas ken ik
36 aar geleden ook mee begonnen en dan de hobby stil gezet
was toen nog allemaal analoog
die hpwm is veel mooier maar die zit niet in elke processor ingebakken
en pwm is voor mij meer dan voldoende
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 03 januari 2016, 12:28:28 pm
Net iets afgewerkt:

(http://www.meb.gerolf.be/sturing/bm/scenery/RGBWC.JPG)

Een verbeterde RGB (en witte) ledstrips-aansturing. (RGBWC=Red-Green-Blue-Warm-Cold)
Centraal printje genereert 5-kanaals 10-bits PWM, dag/nacht-overgang in 1000 logaritmische stappen
Vierstandenschakelaar voor verschillende "modi" (van automatisch-met-bliksem tot "altijd dag")
Via flatcable naar 10 boostertjes: kunnen elk tot 30 A sturen - en dat zijn heel wat ledjes ...

Deze opzet is bedoeld voor de digitale MTD-baan, maar zal ik (later) ook zelf gebruiken.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 03 januari 2016, 12:45:50 pm
10 boostertjes van 30A dat gaat wel wat licht geven, zeker de bliksem. En dan nog aangestuurd door een GPS systeem  ;)


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 03 januari 2016, 13:02:27 pm
Oh ja, nog vergeten te melden bij de specs: Parameters zijn via een Excel in te voeren
 - die maakt er data-tabellen van die dan gecompileerd worden. Het "afregelen" kan zo vrij snel gebeuren  :)

aangestuurd door een GPS systeem  ;)

Tja, ik begrijp nog steeds niet waarom ze dat GeoLocatieSysteem mijn initialen gegeven hebben ...  ::)  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 03 januari 2016, 15:59:09 pm
vandaag de hopelijk laatste versie van het verzorging depot geprogrammeerd tot zover ik alles in de pic krijg
ik zit nu op 50% data en de pic is 99.66%vol
nu is het wachten op de pic met meer geheugen die besteld is

nu is het dus mogelijk van 32 rijwegen in te geven die dan vrijgegeven worden en de wissels gezet
de slaven hebben allemaal hun eigen adres (X16)om de baan te sturen
als dit allemaal werkt naar voldoening dan kan ik als de nieuwe er is de rest verder programmeren
de bedoeling is op het schakelbord dus BV 1 en 6 in te drukken dan worden de wissels gezet en dan de rijwegen vrij gegeven
als je de weg hebt gereden dan op een knop drukken en dan word de rijweg terug geblokkeerd en het paneel vrij gegeven om een volgende rijweg in te geven .dit bezet melden doe ik omdat dan geen rijwegen blijven open staan
het is dus een verzorging depot  waar zo wie zo niet snel gereden gaat worden en alles op manueel bedient word
spoor 14 is het over name spoor waarna de loco's vandaar uit terug in het systeem worden gevoegd

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: modelbouwpatrick op 03 januari 2016, 19:35:21 pm
Gerolf,
Die dag nacht schakeling ziet er knap uit.
Zelf ontworpen of aangepast aan een gevonden schakeling.
Schema zegt mij wel iets .
ZEg de voorwaarden maar geen probleem.

grtn
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 03 januari 2016, 19:40:02 pm
Zeg Raf om dat geheugen probleem met opgeslagen rijwegen op te vangen kan je toch overwegen om een sd card lezer module te koppelen aan je pic ? Via I2C of serieel kan je dan de data ophalen van je kaartje en de definitie van de data kan je flexibel op de pc doen

Zo gaat dat bij mij gebeuren, maar dan met RFID kaartjes en een lezertje. 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 03 januari 2016, 20:09:47 pm
... Een verbeterde RGB (en witte) ledstrips-aansturing. (RGBWC=Red-Green-Blue-Warm-Cold)...

Knap gedaan, Gerolf !
10x 30A ?  Amai, dat zijn heel wat ledjes !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 03 januari 2016, 22:18:59 pm
dani ik heb het opgelost met een grotere pic te gebruiken
2 k is nogal weinig geheugen en de processor heeft geen i2c aan boord dus die protocol schrijven kost ook weer plaats
en ik heb mijn eigen pwm sturing ook nog eens waar al de processoren mee aan elkaar liggen
het werkt op het ogenblik maar ik zit te wachten op mijn relais (bordjes met 8 relais op plus drivers en ledjes voor geen geld)
dan kan ik maar eerst verder
die pic met veel geheugen die is de master en die stuurt ook de bus naar de slaven toe
met 5 processoren kom ik toe om ook nog eens alle wissels te sturen 
dus 1 die eigenlijk het toetsenbord verbind met de bus lijn
dan 3 die de rijweg vrijgeven en bewaken
en 1 die de servo's voor de wissels gaat bedienen
elke slaaf doet gewoon wat hem opgedragen is en er word geen dat naar de rijweg vrijgave gestuurd
de slaven houden dat zelf bij waar wat staat
en elke keer als er een rijweg terug bezet gemeld word updaten ze hun data van bezette sporen dus dan is er geen werking nodig voor iets anders en hebben ze tijd zat om dat te doen

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 03 januari 2016, 22:20:21 pm
Hangt van de spanning af... 30A bij 5V of 30A bij 24V.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 04 januari 2016, 06:41:29 am
Bedankt voor de reactie, mensen  :)

Hangt van de spanning af... 30A bij 5V of 30A bij 24V.

12V ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 04 januari 2016, 08:59:17 am
@Gerolf : zelfs bij 12V is het een HOOOOOP lampjes :-)
10 x 30 A x 12 V = 300 * 12 =  3600  Watt.    Daar zale je energie provider blij mee zijn als je dat allemaal ineens gebruikt.
300 Ampère, gedeel door 20 mA = 300 * 50 = 15.000 LEDjes, santee !

Maar als je dan toch iets maakt, beter wat reserve in calculeren dan later te moeten hermaken.   
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 04 januari 2016, 09:03:17 am
@Raf :  2K weinig ?   
Even snel rekenen...

Ik heb mijn sturing voor 90 wissels voorzien.  Dus per "programma"  zijn dat 90 bits  (eentje voor elke wissel naargelang de stand van de wissel moet zijn)
dus  voor elke "preset"  zijn er 90 bits nodig, oftewel 12 BYTES

als ik bijgevolg  1 KB geheugen heb  (dat heeft zo een RFID flash kaartje)  kan ik daar 80  sets op kwijt.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 04 januari 2016, 10:39:38 am
hoi dani
ok maar gij gebruikt ook nog een computer om de rijwegen te bepalen
ik niet dat zit allemaal mee in die ene processor
er is 1 slaaf die een 6 tal wissels bestuurt allemaal met en servo als motor
dus er moeten zo wie zo 6 uitgangen gebruikt worden om die aan te sturen
dan 2 ingangen voor de data en adres lijn en daar is dus een groot deel software voor nodig
ik post straks de code van de zender eventjes
de code van de zender

Device 16F628A                ;Gebruik een 16F628A type
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
All_Digital TRUE              ;Alle ingangen digitaal

Xtal = 4

Symbol Potmeter     = PORTA.1 ;PORTA.1 heet vanaf nu 'Potmeter'
Symbol delay        = PORTA.0  ;dit is de knop die na het weg rijden alles wist



Dim a As Word
Dim Weerstand As Word         ;WORD variabele, bevat straks de stand van de potmeter
Dim cijfer As Word
Dim cijfer1 As Word
Dim cijfer2 As Word
Dim blok As Word
Clear                         ;Wis alle RAM geheugen
DelayMS 100                   ;LCD stabilisering

Cls


start:
Print At 1,1, "cijfer1 -"
Print At 2,1,"cijfer2-"
  While PORTA.1 = 1 : Wend
  High Potmeter               ;Condensator die aan de potmeterpoort zit ontladen
  DelayMS 1                   ;Even wachten zodat condensator helemaal leeg is
  Weerstand = RCIn Potmeter, High   ;Geef RC oplaadtijd aan variabele 'Weerstand'
       
   
    Print At 1,12,"    "
    Print At 1,12,Dec Weerstand
    DelayMS 200
  GoSub test
  cijfer1 = cijfer
  Print At 1,10, Dec cijfer1
  While PORTA.1 = 1 : Wend
  GoTo start2
 
  start2:
   High Potmeter               ;Condensator die aan de potmeterpoort zit ontladen
  DelayMS 1                   ;Even wachten zodat condensator helemaal leeg is
  Weerstand = RCIn Potmeter, High   ;Geef RC oplaadtijd aan variabele 'Weerstand'
   
   While PORTA.1 = 1 : Wend
    DelayMS 200
    Print At 2,12,"    "
    Print At 2,12,Dec Weerstand
   
    GoSub test
  cijfer2 = cijfer
  Print At 2,10, Dec cijfer2
    While PORTA.1 = 1 : Wend
    GoSub vrijgave
DelayMS 100
 Print At 1,10, "  "
 Print At 2,10, "  "
 
 Print At 1,12,"reset"
 Print At 2,12,"knop"
 While delay = 1 : Wend      ;wachten tot de reset knop is gedrukt
 GoSub resetknop
GoTo start

 
 
 
 
 
 
 test:
     cijfer = 0
  Select Weerstand          ;We gaan de variabele met de naam 'Weerstand' testen
 
      Case <  2
       cijfer = 1  ;Is 'Weerstand' kleiner dan 31, dan is het toets 1, anders
      Case <  60
       cijfer = 2  ;Is 'Weerstand' kleiner dan 94, dan is het toets 2, anders
       
      Case < 133
      cijfer = 3  ;...enz
      Case < 192
      cijfer = 4
      Case < 264
       cijfer = 5
      Case < 339
       cijfer = 6
       Case < 419
       cijfer = 7
       Case < 1208
       cijfer =14
       
     
    End Select
   
    Return
 
    vrijgave:
    ;processor slave 1
    If cijfer1 = 1 And cijfer2 = 2 Then GoTo pak1
    If cijfer1 = 1 And cijfer2 = 4 Then GoTo pak2
    If cijfer1 = 1 And cijfer2 = 3 Then GoTo pak3
    If cijfer1 = 1 And cijfer2 = 5 Then GoTo pak4
    If cijfer1 = 1 And cijfer2 = 6 Then GoTo pak5
    If cijfer1 = 1 And cijfer2 = 7 Then GoTo pak6
    If cijfer1 = 1 And cijfer2 = 14 Then GoTo pak7
    If cijfer1 = 2 And cijfer2 = 4 Then GoTo pak8
    If cijfer1 = 2 And cijfer2 = 14 Then GoTo pak9
    If cijfer1 = 3 And cijfer2 = 5 Then GoTo pak10
    If cijfer1 = 3 And cijfer2 = 6 Then GoTo pak11
    If cijfer1 = 3 And cijfer2 = 7 Then GoTo pak12
    If cijfer1 = 3 And cijfer2 = 14 Then GoTo pak13
    If cijfer1 = 4 And cijfer2 = 14 Then GoTo pak14
    If cijfer1 = 6 And cijfer2 = 7 Then GoTo pak15
    If cijfer1 = 6 And cijfer2 = 14 Then GoTo pak16
    If cijfer1 = 7 And cijfer2 = 14 Then GoTo pak17
    If cijfer1 = 2 And cijfer2 = 1 Then GoTo pak1
    If cijfer1 = 4 And cijfer2 = 1 Then GoTo pak2
    If cijfer1 = 3 And cijfer2 = 1 Then GoTo pak3
    If cijfer1 = 5 And cijfer2 = 1 Then GoTo pak4
    If cijfer1 = 6 And cijfer2 = 1 Then GoTo pak5
    If cijfer1 = 7 And cijfer2 = 1 Then GoTo pak6
    If cijfer1 = 14 And cijfer2 = 1 Then GoTo pak7
    If cijfer1 = 4 And cijfer2 = 2 Then GoTo pak8
    If cijfer1 = 14 And cijfer2 = 2 Then GoTo pak9
    If cijfer1 = 5 And cijfer2 = 3 Then GoTo pak10
    If cijfer1 = 6 And cijfer2 = 3 Then GoTo pak11
    If cijfer1 = 7 And cijfer2 = 3 Then GoTo pak12
    If cijfer1 = 14 And cijfer2 = 3 Then GoTo pak13
    If cijfer1 = 14 And cijfer2 = 4 Then GoTo pak14
    If cijfer1 = 7 And cijfer2 = 6 Then GoTo pak15
    If cijfer1 = 14 And cijfer2 = 6 Then GoTo pak16
    If cijfer1 = 14 And cijfer2 = 7 Then GoTo pak17
    ;processor slave 2 
    If cijfer1 = 8 And cijfer2 = 14 Then GoTo pak18
    If cijfer1 = 14 And cijfer2 = 8 Then GoTo pak18
    If cijfer1 = 9 And cijfer2 = 14 Then GoTo pak19
    If cijfer1 = 14 And cijfer2 = 9 Then GoTo pak19
    If cijfer1 = 10 And cijfer2 = 14 Then GoTo pak20
    If cijfer1 = 14 And cijfer2 = 10 Then GoTo pak20
    If cijfer1 = 11 And cijfer2 = 14 Then GoTo pak21
    If cijfer1 = 14 And cijfer2 = 11 Then GoTo pak21
    If cijfer1 = 12 And cijfer2 = 14 Then GoTo pak22
    If cijfer1 = 14 And cijfer2 = 12 Then GoTo pak22
    If cijfer1 = 13 And cijfer2 = 14 Then GoTo pak23
    If cijfer1 = 14 And cijfer2 = 13 Then GoTo pak23
    If cijfer1 = 14 And cijfer2 = 15 Then GoTo pak24
    If cijfer1 = 15 And cijfer2 = 14 Then GoTo pak24
    If cijfer1 = 14 And cijfer2 = 16 Then GoTo pak25
    If cijfer1 = 16 And cijfer2 = 14 Then GoTo pak25
    If cijfer1 = 14 And cijfer2 = 18 Then GoTo pak26
    If cijfer1 = 18 And cijfer2 = 14 Then GoTo pak26
    If cijfer1 = 14 And cijfer2 = 19 Then GoTo pak27
    If cijfer1 = 19 And cijfer2 = 14 Then GoTo pak27 
   ; If cijfer1 = 14 And cijfer2 = 20 Then GoTo pak28
   ; If cijfer1 = 20 And cijfer2 = 14 Then GoTo pak28
   
'    If cijfer1 = 9 And cijfer2 = 10 Then GoTo pak29
'    If cijfer1 = 10 And cijfer2 = 9 Then GoTo pak29
    'If cijfer1 = 8 And cijfer2 = 10 Then GoTo pak30
    'If cijfer1 = 10 And cijfer2 = 8 Then GoTo pak30
    'If cijfer1 = 8 And cijfer2 = 9 Then GoTo pak31
    'If cijfer1 = 9 And cijfer2 = 8 Then GoTo pak31
    'If cijfer1 = 12 And cijfer2 = 13 Then GoTo pak32
    'If cijfer1 = 13 And cijfer2 = 12 Then GoTo pak32
    'If cijfer1 = 11 And cijfer2 = 13 Then GoTo pak33
    'If cijfer1 = 13 And cijfer2 = 11 Then GoTo pak33
    'If cijfer1 = 11 And cijfer2 = 12 Then GoTo pak34
    'If cijfer1 = 12 And cijfer2 = 11 Then GoTo pak34
    ' If cijfer1 = 15 And cijfer2 = 17 Then GoTo pak35
    'If cijfer1 = 17 And cijfer2 = 15 Then GoTo pak35
    'If cijfer1 = 16 And cijfer2 = 17 Then GoTo pak36
    'If cijfer1 = 17 And cijfer2 = 16 Then GoTo pak36
    'If cijfer1 = 18 And cijfer2 = 16 Then GoTo pak37
    'If cijfer1 = 19 And cijfer2 = 17 Then GoTo pak38
    'If cijfer1 = 20 And cijfer2 = 17 Then GoTo pak39
    'If cijfer1 = 16 And cijfer2 = 21 Then GoTo pak40
    'If cijfer1 = 21 And cijfer2 = 16 Then GoTo pak40
 Cls
 
 Print "foutieve ingave"
 DelayMS 1000
 Cls
 Return
 
 
 pak1:  ; van 1 naar2
  blok = 10: GoSub GeefBlokVrij
  Return
 
 pak2: ;van 1 naar 4
   blok = 20: GoSub GeefBlokVrij
   Return
 
 pak3: ;van 1 naar 3
   blok = 30: GoSub GeefBlokVrij
   Return
 
 pak4: ;van 1 naar 5
   blok = 40: GoSub GeefBlokVrij
   Return
   
 pak5:  ;van 1 naar 6
   blok = 50: GoSub GeefBlokVrij
   Return
 
 pak6:      ;van 1 naar 7
  blok = 60: GoSub GeefBlokVrij
  Return
 pak7:   ;van 1 naar 14
  blok = 70: GoSub GeefBlokVrij
  Return
   
 pak8:   ;van 2 naar 4
  blok = 80: GoSub GeefBlokVrij 
  Return
     
 pak9:    ;van 2 naar 14
  blok = 90: GoSub GeefBlokVrij
  Return
   
 pak10:   ;van 3 naar 5
  blok = 100: GoSub GeefBlokVrij   
  Return   
   
 pak11:  ;van 3 naar 6
   blok = 110: GoSub GeefBlokVrij
   Return
       
 pak12: ;van 3 naar 7
   blok = 120: GoSub GeefBlokVrij 
   Return
   
 pak13: ;van 3 naar 14 
   blok = 130: GoSub GeefBlokVrij   
   Return 
 pak14:;van 4 naar 14
   blok = 140: GoSub GeefBlokVrij   
 
   Return   
  pak15: ;van 6 naar7   
   blok = 150: GoSub GeefBlokVrij
   Return
   
  pak16: ;van 6 naar 14
   blok = 160: GoSub GeefBlokVrij 
   Return 
   
  pak17:  ;van 7 naar 14
   blok = 170: GoSub GeefBlokVrij   
   Return 
   
  pak18:;van 8 naar 14
  blok = 180 :GoSub GeefBlokVrij   
   Return   
   
   pak19:;van 9 naar 14
  blok = 190 :GoSub GeefBlokVrij   
   Return     
   
  pak20:;van 10 naar 14
  blok = 200 :GoSub GeefBlokVrij   
   Return     
  pak21:;van 11 naar 14
  blok = 210 :GoSub GeefBlokVrij   
   Return     

   pak22:;van 12 naar 14
  blok = 220 :GoSub GeefBlokVrij   
   Return   
    pak23:;van 13 naar 14
  blok = 230 :GoSub GeefBlokVrij   
   Return   
  pak24:;van 15 naar 14
  blok = 240 :GoSub GeefBlokVrij   
   Return   
   pak25:;van 16 naar 14
  blok = 250 :GoSub GeefBlokVrij   
   Return 
   pak26:;van 18 naar 14
  blok = 260 :GoSub GeefBlokVrij   
   Return   
   pak27:;van 19 naar 14
  blok = 270 :GoSub GeefBlokVrij   
   Return   
   pak28:;van 20 naar 14
  blok = 280 :GoSub GeefBlokVrij   
   Return   
  pak29:;van 10 naar 9
  blok = 290 :GoSub GeefBlokVrij   
   Return     
   pak30:;van 8 naar 10
  blok = 300 :GoSub GeefBlokVrij   
   Return   
   pak31:;van 8 naar 9
  blok = 31 :GoSub GeefBlokVrij   
   Return
   pak32:;van 12 naar 13
  blok = 320 :GoSub GeefBlokVrij   
   Return   
   pak33:;van 11 naar 13
  blok = 330 :GoSub GeefBlokVrij   
   Return   
   pak34:;van 11 naar 12
  blok = 340 :GoSub GeefBlokVrij   
   Return   
  pak35:;van 17 naar 15
  blok = 350 :GoSub GeefBlokVrij   
   Return     
  pak36:;van 16 naar 17
  blok = 360 :GoSub GeefBlokVrij   
   Return     
  pak37:;van 18 naar 16
  blok = 370 :GoSub GeefBlokVrij   
   Return     
  pak38:;van 19 naar 17
  blok = 380 :GoSub GeefBlokVrij   
   Return     
  pak39:;van 20 naar 17
  blok = 390 :GoSub GeefBlokVrij   
   Return     
   pak40:;van 16 naar 21
  blok = 400 :GoSub GeefBlokVrij   
   Return   

 GeefBlokVrij:

 PulseOut PORTA.2, blok , High
 DelayMS 10
 While PORTA.0 = 1 :Wend
 Return
 
resetknop:
  PulseOut PORTA.3, blok , High
  DelayMS 10
  Print At 1,12,"     "
 Print At 2,12,"    "
  Return

en wat uitleg
je kiest eerst waar je vanaf wil vertrekken
dan waar je naar toe wil
dan zet de zender een code op de bus waar de slaven dan hun adres van krijgen wat ook meteen is wat ze moeten doen
BV
vertrek 1 naar 14
dan word de code 70 op de adreslijn gezet
elke slaaf die nu code 70 herkent reageerd op deze code en doet dan zijn ding
de wissels worden gezet en de blokken worden vrij gegeven dit gebeurt altijd ook al is een blok bezet
want de blokken zelf controleren of ze bezet zijn of niet en houden zelf de voor en achterliggen de blokken in het oog
bv van 1 naar 14 worden deze blokken gezet
blok1
wissel 1 recht
blok 2
blok 4
wissel 6 rond
wissel 4 ronde
wissel 3 rond
blok 14
als nu blok 4 bezet is dan gaat de loco rijden om in blok 2 tot stilstand te komen  want blok 4 is bezet
hier de lay out
(https://scontent-ams3-1.xx.fbcdn.net/hphotos-xtf1/t31.0-8/10658868_1069391046446377_2637038736339169875_o.jpg)

hopelijk begrijp naar maar als je een manier vind om de code makkelijker te krijgen ben ik een en al oor
gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 04 januari 2016, 11:05:45 am
niks computer....  enkel om de data op te slaan.     Dat doe jij toch ook, je gebruikt je pc om je PIC te programmeren.

Laat maar, we praten naast mekaar
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 04 januari 2016, 12:23:45 pm
 ja maar nadien als de pic geprogrammeerd is staat die wel los van de computer
en ik sla op de pc dus geen data op maar gebruik die alleen maar om de pic te programmeren

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 04 januari 2016, 13:13:03 pm
dat is bij de arduino ook zo, die pikt de signalen van de DCC centrale op als commando's ipv dat jij op knopkes drukt.


Even je code bekeken, en ik heb alweer 30 nieuwe grijze haren.
IF.. and... GOTO. en dat maal n-tig.   Dat is spaghetti uit de goede oude tijd inderdaad.

Bestaat er niet zo iets als een "switch" of  "case" statement  om multiple vertakkingen te maken in dezelfde code ?
En wat die   "if ... and ...." betreft :   gebruik wat wiskunde en het wordt makkelijker !!

een voorbeeld
* cijfer1 en cijfer2 kunnen blijkbaar van  1 tot 21 of zo lopen  (of verder).

Als je dat omzet in unieke waarden en er een enkel getal van maakt, kan je prima met een "switch" structuur werken.
vb   (met een nieuwe variabele   "doel" van het "unsigned integer" type)

doel =  cijfer1*100 + cijfer2
   (je hebt dan een getal tot maximaal 9999)
bepaal de mogelijke waarden van "doel"  en koppel daar de akties uit je  "go to"  blokken aan.

vb  ( van arduino)

switch (doel)
{case  2 :
     hier de acties voor dit geval
  break;
case  109 :
     hier de acties voor dit geval
  break;
case  215 :
     hier de acties voor dit geval
  break;
.... etc
}

Deze manier van "branching" is veeeeel minder belastend voor je processor/ALU  dan al die IF... na elkaar 

Als dat toch niet zou bestaan, overweeg dan eens om  in het einde van je  "goto blokken" de return te vervangen door een andere  goto  die zich NA  al die opeenvolgende  IF... statements bevindt !!!   Dan ga je niet al de onnodige  IF's doorlopen  eens je een passende waarde hebt   (dat is de filosofie achter de Switch structuur).

Daarmee kan je PAKKEN  cycle tijden besparen , zelfs met gebruik van Goto's..

En in jouw geval kan het nog simpeler als je de   "goto's " en de  "pak..."  combineert.  want je doet telkens het zelfde...



BVB:

  If cijfer1 = 19 And cijfer2 = 14 Then GoTo pak27 
En dan
 pak27:;van 19 naar 14
  blok = 270 :GoSub GeefBlokVrij   
   Return   


Maak daar zoals hierboven dan van :   (alweer Arduino syntax)

.
.
.
.
.
if (doel == 1914)     {blok=270; goto EINDELUS;}
.
.
.
.
.

EINDELUS:
Geefblokvrij();
// en dan de rest van je code

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 04 januari 2016, 13:47:16 pm
arduino en proton basic lopen ver uit elkaar
maar ik zal de code eens opnieuw bekijken
zoals ze nu is werkt ze en ja als je 59 jaar bent en 30 jaar geleden begonnen bent met basic dan programmeer je op de oude manier
hoofd zaak is dat ze werkt hoe je het ook doet en tijd ach als je naar de 60 gaat heb je tijd
en een loco is nu eenmaal het langzame element in heel de zaak
maar ik zal het eens bekijken of het inderdaad nog iets meer gestroomlijnd kan
gr raf en reeds bedankt want het kan alleen maar beter werken
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 04 januari 2016, 15:51:18 pm
ok dani ik doe echt wel wat met je input hoor maar het naar proton omzetten is niet altijd evident

wat ik gedaan heb tot nu toe

pak2:  ;14-18
    Print At 2,6,"           "               
  Print At 2,6, "14-18"                   
     PORTA.6 = 1
     PORTA.0 = 1
      PORTA.0 = 1                                 
    DelayMS 500   ;While PORTA.5 = 1 :Wend                 
     PORTA.0 = 0                       
     PORTA.6 = 0
     PORTA.0 = 0                             
  DelayMS 200                               
  Return

dit was het en dit is het geworden
pak2:  ;14-18             
    Print At 2,6, "14-18"     
    PORTA = %01100001                                             
    GoSub wachten
    PORTA = %00100000                             
    DelayMS 200                               
  Return

voordeel is er niet wat processor ruimte aan gaat eigenlijk
want ik win nagenoeg niets
er is nu een blok wachten aan gemaakt

 wachten:
  While PORTA.5 = 1 :Wend
  Return
nu heb ik dus maar 1 wacht blok voor al de andere blokken wat dus een besparing zou moeten zijn
hier word dus gewacht tot de master over zijn tweede data lijn alle processoren op porta.5 een 0 aan bied waarna ze terug springen en hun betreffende blokken terug sperren

het blijft wel veul werk lol
maar plezant om te doen
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 04 januari 2016, 16:10:19 pm
ik heb inderdaad de indruk dat de talen uit elkaar lopen, maar toch blijft de logica er achter gelijkaardig.  Ik zou me eens moeten verdiepen in die "proton basic" taal.


Dit is wat ik bedoelde met die   "switch case" instructies.

In Proton Basic is dat blijkbaar  "select case" maar het bestaat dus wel !


http://www.protonbasic.co.uk/showthread.php/56507-select-case-else


select X
 case 1 : xxx
 case 2 : yyy
 case else : zzz
 EndSelect

Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 04 januari 2016, 17:27:50 pm
ja select case bestaat maar werkt niet echt evident
 Select Weerstand          ;We gaan de variabele met de naam 'Weerstand' testen
 
      Case <  2
       cijfer = 1  ;Is 'Weerstand' kleiner dan 2, dan is het toets 1, anders
      Case <  60
       cijfer = 2  ;Is 'Weerstand' kleiner dan 60, dan is het toets 2, anders
      Case < 133
      cijfer = 3  ;...enz
      Case < 192
      cijfer = 4
      Case < 264
       cijfer = 5
      Case < 339
       cijfer = 6
       Case < 419
       cijfer = 7
        Case < 264
       cijfer = 8
      Case < 339
       cijfer = 9
       Case < 419
       cijfer = 10
       Case < 264
       cijfer = 11
      Case < 339
       cijfer = 12
       Case < 419
       cijfer = 13       
      Case < 1208
       cijfer =14
       Case < 264
       cijfer = 15
      Case < 339
       cijfer = 16
       Case < 419
       cijfer = 17       
      Case < 1208
       cijfer =18
     
    End Select

hier gebruik ik ze in de schakeling waar de knoppen aan hangen
maar in de slaven is het niet zo evident om ze daar te gebruiken omdat er per pak verschillende instructies moeten doorlopen worden
en er kan naar meerdere pak's gesprongen worden om dat er over het zelfde spoor gereden word en daarom schrijf ik daar niet terug een pak code voor
BV van 10 naar 14 gebruikt het pak van 8 naar 14 om de wissels reeds te zetten en dan die van 9 naar 14 om de blokken vrij te geven en dan uiteindelijk het pak van 10 wat er ook voor zorgt dat de deur van de loods open gaat voor de loco kan vertrekken
als de loco in 14 is aangekomen dan zijn de deuren reeds terug aan het dicht gaan en dat gebeurt dan weer door de detectie in blok 8
maar voor van blok 14 naar blok 10 te rijden gelden dan weer andere criteria
de deuren gaan pas open als de loco blok 8 binnen rijd en bij het binnen rijden van blok 10 gaan ze na een bepaalde tijd weer terug dicht want anders zit de loco tussen de deuren   en dat is niet de bedoeling
er komt nog een schakelaar in de loods gemonteerd achter aan die gaat bepalen of de deuren terug dicht gaan
gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 05 januari 2016, 00:34:32 am
raf,

ik ben niet vertrouwd met proton basic maar dit probleem leent zich voor een zogenaamde datadriven aanpak.
Hierbij worden condities en daaruit volgende acties vastgelegd via datastructuren en niet via code.
Dit is veel flexibeler en levert in veel gevallen ook compactere code op.

Toegespitst op jouw code voor het omzetten van cijfercombinaties naar de blokken zou dit als volgt er uit kunnen zien (mogelijk compileert dit niet maar het geeft een beeld):


index = 0

while cijfer1lijst[index]<>0

If cijfer1=cijfer1lijst[index] And cijfer2 = cijfer2lijst[index] Then Blok = Bloklijst[index] : GoSub GeefBlokVrij :return
index = index+1

whend



De 3 arrays dien je vooraf te initialiseren met de cijfer/blok gegevens. Het einde van de lijst geef je aan met een 0
Heel de logica is dan gereduceerd tot een handvol lijnen code en 3 arrays met data.

mvg,

Patrick Smout
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 05 januari 2016, 11:07:15 am
Raf,

De logica van je select case in je laatst geposte code ontgaat me een beetje.
- je hebt meermaals dezelfde case in je lijst, alleen de waarde van de laatste case die geldig
  is, zal effect hebben op je "cijfer".
- Moet de volgorde niet van groot naar klein ingesteld worden ?
  als je weerstand kleiner is dan 2, wil je cijfer 1, en als weerstand kleiner is dan 60, wil je 
  cijfer 2. echter, als je weerstand kleiner is dan 2, krijg je dus ook cijfer 2, doordat kleiner
  dan 60, eigenlijk die eerste case overruled ...

- je zou je case ook kunnen opbouwen als:
  case < 2
  case > 1 and < 60
  case > 59 and < 133


succes,
Kris
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 januari 2016, 11:15:57 am
Kris,  volgens mij moeten in dit voorbeeld de condities "> 1" en "> 59" er zelfs  niet bijstaan, want daar is automatisch aan voldaan door de vorige stappen:
de eerste "case" waaraan voldaan wordt, wordt uitgevoerd, waarna je uit de "select case" instructie springt.
De sortering van de voorwaarden moet dus van klein naar groot. (denk ik dan zo  ;) )
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 05 januari 2016, 11:30:47 am
het blijft een spaghetti :-)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 05 januari 2016, 11:44:40 am
het blijft een spaghetti :-)

Yep.  Patrick's oplossing is een heel stuk overzichtelijker  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 05 januari 2016, 13:16:30 pm
ok patrick efkes proberen om te zetten

geen code maar gewoon efkes denken

je maakt dus een array index [40] want er zijn 40 mogelijkheden
heel die index moet je dus eerst vullen met data en dat kost ook geheugen plaats want het is niet 1,2,3 maar het is < 2 of <10 of < 50 of <240
dus index = index + 1 gaat niet kloppen
de reden is dat ik 18 knoppen op 1 ingang heb zitten met een weerstands array en elke weerstand is niet 100% gelijk dus er is een afwijking in de gemeten ingaven daarom < 2 of <10 of < 50 of <240 zo valt de betreffende knop altijd ergens in een gebied dat juist is
en op de andere manier ziet het uit of het effectieve waarden moeten zijn

en ja het ziet er uit als spaghetti maar met saus en gehakt is da ook lekker

Jean de case zoals ik ze gebruikt heb werkt zo inderdaad
<2 kan dus alleen maar 1 zijn want 0 is niet toegelaten
da < 10 kan alleen maar tussen 2 en 10 zijn enz.
en ja je springt uit de case routine indien aan de voorwaarde is voldaan
die arry kan ook maar dan moet ik hem alsnog vullen en dat kost ook veel geheugen
BV
cijfer(1,1) = 1 ,cijfer(1,2) =2 ,pak(1,3) = 10
cijfer(2,1) = 1 ,cijfer(2,2) =3 ,pak(2,3) = 20
enz.
nadien al die array's terug af gaan om te kijken welke klopt gaat misschien wel sneller maar er is tijd genoeg om de baan want de loco is het traagste element in het geheel
hij moet het traject afleggen voor er een nieuw kan ingegeven worden

 
 gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 05 januari 2016, 13:52:36 pm
je maakt dus een array index [40] want er zijn 40 mogelijkheden
heel die index moet je dus eerst vullen met data en dat kost ook geheugen plaats want het is niet 1,2,3 maar het is < 2 of <10 of < 50 of <240
Dat is nu net de kracht van de arrays, je kan er meerdere in parallel bekijken of meerdimensionele maken.
En als je het type variabele in je arrays simpel houdt  (bvb een integer of byte  waarde) dan pakt dat veel minder geheugen in dan een ellenlang stuk programma code.


Als je een array maakt van 40 plaatsen met daarin 2 kolommen, zijnd e de te vergelijken waarde  (2, 10, 50, 240, .... uit je voorbeeld)  en in de tweede kolom de doel waarde (doe je moet verwerken) dan ben je er al.

Maar ik heb de indruk dat dit te complex aan het worden is, zoals je zelf al zei dateert je programmeerkennis nog van vroeger en heb je die "nieuwe" dingen niet zo mee gevolgd.

Dus soit, als het op jouw manier werkt, dan is dat voor mij goed.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 05 januari 2016, 14:45:42 pm
dani ik ben niet te oud om te leren hoor

maar ik zou dan een arry moeten maken van 40 op 3
waarvan 40 de mogelijkheden zijn die ik kan hebben
en die drie zijn dan het vertrek ,de aankomst ,en wat er verzonden moet worden aan pulsbreedte
maar omdat de vertrek en aankomst niet juist een getal is waar je van kan zeggen ok druk ik knop 4 dan meet ik 40 op de ingang
want het kan ook 35 zijn
als bv de temperatuur oploopt in de kamer veranderen de weerstands waarden in de console
daarom de case <2 doe dit
case <10 doe dees

die arry's zijn ook nog van mijn tijd want die hadden we toen nodig om het beeldscherm op te bouwen dus ik heb er wel mee gewerkt maar ik moet dat terug eens bekijken
als ik nu die arry's in eeprom kon zetten dan bespaarde ik plaats in het werk geheugen
maar dat is nieuw voor me want dat bestond toen nog niet

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: patrick smout op 05 januari 2016, 21:59:32 pm
je maakt dus een array index [40] want er zijn 40 mogelijkheden
heel die index moet je dus eerst vullen met data en dat kost ook geheugen plaats want het is niet 1,2,3 maar het is < 2 of <10 of < 50 of <240
dus index = index + 1 gaat niet kloppen
In mijn voorbeeld ging ik ervan uit dat we de arrays gebruiken om aan de hand van de 2 knopnummers het juiste blok te kunnen selecteren.
Je kan ook array(s) gebruiken om de weerstandswaarde om te zetten naar een knopnummer. Die lus moet je dan 2 keer doorlopen (en de test in de lus is uiteraard anders).
Het klopt dat je extra geheugen ruimte kwijt bent voor het initialiseren van de arrays maar ik vermoed dat dit nog altijd minder zal zijn dan de andere code. Ik programmeer hoofdzakelijk in C. Initialiseren van een array met constante data kost je daar geen byte extra (buiten de data die er in moet). Voor zover ik kan zien kent deze taal geen geinitialiseerde variabelen, jammer maar helaas.
Om dit te omzeilen kan je in Proton Basic wel gebruik maken van de opdracht LREAD en LDATA ipv de array. Met LDATA zet je constanten onmiddellijk in het geheugen (zonder extra code). Met LREAD kan je ze uitlezen (in een lus + een loopteller ).
ik vermoed dat dit de meest compacte oplossing zal geven.

Voor het omzetten van weerstandswaarden naar een knopnummer kan je mogelijk ook gebruik maken van de opdracht LOOKDOWNL. Uit de beschrijving kan ik afleiden dat een lijst met waarden doorlopen wordt totdat een te definiëren test TRUE oplevert als resultaat. Komt dicht in de buurt van wat je nodig hebt.

mvg,

Patrick
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 06 januari 2016, 08:44:07 am
hallo patrick

die lookdownl doe ik reeds met de case functie

met ewrite zou ik de arry in eeprom kunnen zetten dan spaar ik werk geheugen
en dan met eread deze terug lezen indien nodig
maar dat gaat niet meer dan omslachtig worden terwijl het nu wachten is tot de nieuwe pic's met meer geheugen binnen gekomen zijn
ok niet qua programma de beste oplossing maar de basic van 25 jaar of langer geleden is niet de basic die ik nu aan het gebruiken ben 
er zijn een pak pic gerelateerde instructies bijgekomen en er zijn er ook weg gevallen of minder gebruikt
met peek en poke kon je rechtstreeks in het geheugen of zelfs op het scherm een pixel beïnvloeden .
ik ga me eens verdiepen in die lookdownl en kijken of ik er iets mee aan kan vangen

ik had ook in gedachte om de twee nummers *10 te doen en dan op te tellen en dan krijg ik ook een waarde waarmee ik maar 2 array's nodig ga hebben
BV 1*10 +5 komt op 15
1 vertrek 5 aan komt
dan met 15 kijken in de array welke code blok moet krijgen en dit verzenden
maar ik heb het nog niet na gekeken of ik dan dubbele codes kan hebben
want 5*10  +1 geeft 51 en dat is dus vertrek van uit 5 aankomst in 1 en toch is het dezelfde blok code die verzonden moet gaan worden
omdat de rijweg dezelfde is
geen gemakkelijke opgave zo te zien maar dat houd het spannend


gr raf 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 06 januari 2016, 09:11:36 am
met peek en poke kon je rechtstreeks in het geheugen of zelfs op het scherm een pixel beïnvloeden .
Zie nu, ne COmmodore fan !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 06 januari 2016, 12:05:06 pm
nee Z 80 en later de ZX 80 van sinclaire
die commedore basic was nog grotere shit LOL
terwijl die sinclaire basic reeds veel van gwbasic had
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 12 januari 2016, 17:55:39 pm
Het begin van de centrale voor MeB:

(http://www.meb.gerolf.be/sturing/bm/auto/Centrale00.JPG)

Centrale 20-polige bus, gemaakt met lintkabel-headers. Tot 14 I2C-slaves mogelijk
Voorlopig een I2C-Master-print (die ook nog enkele andere dingen zal doen) en een output-print
 ... de volgende stappen voor een meer intelligente aansturing van MeB  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 12 januari 2016, 18:03:36 pm
Ziet er alweer erg propertjes uit, Gerolf.
Ik ben benieuwd naar het resultaat van de testen.  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2016, 17:28:46 pm
Proefopstelling: De centrale heeft intussen 4 printjes,
 en is aangesloten op enkele snelheidsregelaars
 en aan de centrale noodstop-schakeling.

(http://www.meb.gerolf.be/sturing/bm/auto/Centrale01.JPG)

... en zo kan ik wat stappen verder doen. Eerst de interne communicatie van de centrale ...
 
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 22 januari 2016, 17:54:34 pm
Goed bezig, Gerolf.
Er brandt al een  lampje   ;)  ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2016, 17:57:28 pm
 ;D en nu zelfs 2  ;D  ::)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: PeterC op 22 januari 2016, 18:05:01 pm
Busprinten :-)
Jaren geleden dat ik dat nog heb gezien.  Ik heb onlangs (tijdens opruimwerken) nog enkele busprinten gevonden die waren voorzien van 64 polige haakse connectoren, zoals jou systeem maar dan met printconnectoren.  Een universele data-, adres- en controlebus zorgde voor de onderlinge verbindingen tussen een processor (Z80) en zijn RAM-ROM-CTC-PIO.  Ik heb er leuke herinneringen aan.


Goe bezig!



Er brandt al een  lampje   ;)  ;D
;D en nu zelfs 2  ;D  ::)

Ik hoop dat het die grote beveiligingsgloeilamp niet is...  :o  8) 8) 8)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 januari 2016, 20:16:11 pm
Bedankt, Peter  :)

Over die beveiligingsgloeilamp : dat is een 20W-autolampje: kortsluitbeveiliging en -indicatie.
Dergelijke eindtrappen zitten er momenteel in mijn baan voor de huidige snelheidsregelaars, en die ga ik behouden.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 22 januari 2016, 23:59:40 pm
Ben na 25 jaar nog eens begonnen met software schrijven. Amaai, dat komt allemaal van héél ver. Maar kom, ik kan de pc al via de usb de adc op het bordje laten lezen. Niet echt een microcontroller maar kom, er is geen forum om dat in te zetten.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 23 januari 2016, 07:55:34 am
alle (her-)begin is lastig, maar als je volhoudt, zal je zien dat je op een bepaald moment ineens de zaak weer door hebt.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Havoc op 23 januari 2016, 11:02:54 am
Eigenaardig genoeg was de practische kant het probleem. Eer die eerste lijn er was die het serienummer van het io bordje kon lezen heeft héél lang geduurt. Nu ja, ben er ook niet zo vaak mee bezig. Maar nu de pcb besteld is moet de software stilaan ook beginnen.

Vroeger dat is de tijd van Turbo C en kleine programaatjes, oefeningen voor unief (nulpunten, integralen etc). Maar nu op een Linux Code::Blocks aan de praat krijgen om met een lib van de fabrikant en een interne lib aan de slag te gaan was een ander paar mouwen.

Vroeger had je 2 boeken van Turbo C en daar stond alles in. Het OS daar moest je niet veel van aantrekken, gevoon naar een register schrijven ging ook. Nu... Er is wel internet en Google maar om te vinden wat je zoekt is niet altijd evident. En iets naar de usb schrijven gaat ook 7 lagen door eer het er is.
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 05 februari 2016, 10:08:43 am
Te vergelijken met de vorige foto:

(http://www.meb.gerolf.be/sturing/bm/auto/Centrale02.JPG)

... wat stappen verder - de centrale werkt nu al "een beetje":
 - opstartsequentie voor I2C-communicatie tussen de printjes (wie is er, wat willen ze, ...)
 - communicatie met LCD-kastje, zodat ik gemakkelijker de volgende stappen kan monitoren en debuggen
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 21 februari 2016, 23:55:07 pm
Poging om het Motorola format te genereren met de µC 18f45k22 om één loc aan te sturen (later eventueel aan te passen naar enkele).
 
http://home.arcor.de/dr.koenig/digital/motorola.htm
Hierboven staat ergens "base frequency (locos): it's based on a serial transmission at 38400 baud".  Is de timing dan niet "fout" ivm start & stopbit? Zou natuurlijk de timing sterk vereenvoudigen... 't is toch wel vrij complex formaat vind ik. Zeker ivm de bitjes voor de functies/richting & snelheid  :o
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 22 februari 2016, 06:58:44 am
Experimenten met een TFT schermpje lopen met horten en stoten, maar dankzij Internet kom ik met kleine stappen vooruit.

Dit weekend ben ik na  weken proberen in staat geweest om mijn 2.4" scherm aan de praat te krijgen.  :) :) :)
De schermen die ik had geprogrammeerd voor mijn (niet-touch-)-3.5"scherm heb ik programmatorisch kunnen herschalen.
Mijn nieuwe 3.5" schermen (MET touch-functie) zijn onderweg, maar met die 2.4" dingetjes kan ik al een stuk verder.

(http://i1089.photobucket.com/albums/i358/jeandv/MSM/MSM-Sedelocus-III/Aansturing/P1130031_zpsgkzvwl3i.jpg)

Bovendien heb ik de Touch-functie aan het werken gekregen: ik herken de tik-zone en de bijhorende functie.
Dus kan ik navigeren tussen de schermen.

Nu ben ik bezig om de getoonde waarden wijzigbaar te maken.

(http://i1089.photobucket.com/albums/i358/jeandv/MSM/MSM-Sedelocus-III/Aansturing/P1130032_zpsjmlwhvwm.jpg)

Eens dit werkt knoop ik daar mijn communicatie-routines aan vast, en stuur ik mijn wissels aan.
Er komt wat licht in de duisternis  :)

Eens het boeltje werkt ga ik wat aan de cosmetica doen: de knoppen ga ik een 3D-achtige look geven met een bitmapje op.
Maar nu eerst de basics  ;)
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Michiel op 22 februari 2016, 07:31:15 am
Dat ziet er goed uit! Naar wat ik lees, want ik ken er zelf niet veel van, heb je een stevig opstakel overwonnen. Super is dat. Ik bewonder je inzet en gedrevenheid om een eigen besturingssysteem te ontwikkelen. Knap!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 februari 2016, 07:59:04 am
Poging om het Motorola format te genereren met de µC 18f45k22 om één loc aan te sturen (later eventueel aan te passen naar enkele).
 
http://home.arcor.de/dr.koenig/digital/motorola.htm
Hierboven staat ergens "base frequency (locos): it's based on a serial transmission at 38400 baud".  Is de timing dan niet "fout" ivm start & stopbit? Zou natuurlijk de timing sterk vereenvoudigen... 't is toch wel vrij complex formaat vind ik. Zeker ivm de bitjes voor de functies/richting & snelheid  :o

Complex is het wel, Start en stop bits kent MM protocol niet. En het is wel degelijk mogelijk om een MM protocol zelf op te wekken met een PIC µC. zie LINK (http://forum.modelspoormagazine.be/index.php/topic,18599.0.html)

(er staat in de LINK ook ergens een filmpje op als bewijs  ;) )


Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 22 februari 2016, 08:26:46 am
goed bezig allemaal toch....   er worden hier vorderingen gemaakt op alle fronten.
@Jean :  de aanhouder wint hee, het ziet er al goed uit.   
@Rian : het MM formaat is neit het eenvoudigste wat er bestaat, neen, maar volgens mij miet het wel doenbaar zijn.  Is er geen bestaande library zoals bvb op het Arduino platform, dat je op een PIC kan draaien ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Gerolf op 22 februari 2016, 09:33:25 am
Grote horde, Jean. Proficiat !
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 22 februari 2016, 10:28:38 am
Experimenten met een TFT schermpje lopen met horten en stoten, maar dankzij Internet kom ik met kleine stappen vooruit.

Dit weekend ben ik na  weken proberen in staat geweest om mijn 2.4" scherm aan de praat te krijgen.  :) :) :)

Echt top Jean, en dan nog een scherm dat kan praten  ;)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Steam.N op 22 februari 2016, 10:40:51 am
... en dan nog een scherm dat kan praten  ;)

 ;D ;D ;D
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: conducteur op 22 februari 2016, 12:37:34 pm
@Geert: complex inderdaad, onmogelijk zeker niet. Dank voor de link naar het andere topic. Had hier nog niet gezocht. Een goudmijn aan informatie!
@dani: nog géén bibliotheek voor Just Another Language (JAL) gevonden.
@Jean: ziet er goed uit!
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 25 februari 2016, 14:10:46 pm
een pwm probleem

ik zit dus in de shit met een pwm probleem dat ik niet opgelost krijg
dus een beetje help mag

gegeven
een signaal zijn lampen gaat niet floep aan maar die gaan langzaam aan en uit
dus een software pwm komt hier goed van pas
de pic is een 12f629

Device 12F629
Xtal 4

Config INTRC_OSC_NOCLKOUT,_ ;INTerne RC OSCillator van de PIC gebruiken
WDT_OFF,_ ;Watch Dog Timer uitgeschakeld
PWRTE_ON,_ ;PoWeR up Timer Enable ingeschakeld
BODEN_OFF,_ ;Brown Out Detection ENable uitgeschakeld
MCLRE_OFF


All_Digital TRUE ; Alle poorten digitaal
                 ;543210 ; Hulpregel Poort poort_A
   GPIO = %001000 ; poort 3 hoog
TRISIO = %001000 ; Poort 3 als ingang

While 1 = 1
For teller = 0 To 255 Step 1
pwm GPIO.1, teller,1 ;groen
next
delayms 4000
for teller = 255 to 0 stap - 1
pwm gpio.1 , teller , 1
next
de led zou dus aan moeten gaan en dan aan blijven voor 4000 tellen
nadien terug langzaam uit gaan
maar das dus niet waar
de led gaat langzaam aan maar dan gaat ze plots uit om dan helemaal niet meer aan te gaan ook niet door een gpio.1 =1 te geven in het programma

tijd voor een filmpke
https://www.youtube.com/watch?v=86gO-HoP19w

na de knop druk test de pic al de ledjes en geeft de sein beelden weer die gestuurd kunnen worden
nadien gaat de groen led langzaam aan maar inplaats van dan eventjes aan te blijven en dan terug langzaam uit te gaan blijft hij ook uit

wat doe ik verkeerd mijn gedacht

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: dani op 25 februari 2016, 14:19:47 pm
typfout ....

"stap"  ipv  "step" bij het weer dimmen !


Heef je ontwikkel omgeving geen syntax checker ?
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: raf op 25 februari 2016, 14:30:09 pm
proton geeft bij stap geen fout

ik heb het veranderd maar alsnog blijft het probleem bestaan bij het uit gaan
While 1 = 1
For teller = 0 To 255 Step 1
PWM GPIO.1, teller,1 ;groen
Next
DelayMS 4000
For teller = 255 To 0 Step - 1
PWM GPIO.1 , teller , 1
Next

als ik nu het uitgaan weg laat door een "While schak = 1 :Wend"er tussen te zetten dan nog gaat de led uit

gr raf
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: sn00zerman op 30 maart 2016, 10:39:33 am
Raf,

Als je het toch met een teller doet, heb je dat PWM-commando helemaal niet nodig,
het kan met lussen binnen je teller:
(syntax van digitalwrite zal niet helemaal juist zijn, doe het even uit m'n hoofd, maar je snapt de bedoeling wel)

fade in:
for teller = 0 to 255 step 1
   for teller2 = 0 to teller step 1
      DigitalWrite(GPIO.1,high)
      sleep(5)
   next
   for teller2 = teller to 255 step 1
      DigitalWrite(GPIO1.low)
      sleep (5)
   next
next

fade out:
for teller = 0 to 255 step 1
   for teller2 = 0 to teller step 1
      DigitalWrite(GPIO.1,low)
      sleep(5)
   next
   for teller2 = teller to 255 step 1
      DigitalWrite(GPIO1.high)
      sleep (5)
   next
next

door die waarde van sleep hoger te maken, fade de lamp trager,
en door die waarde kleiner te maken, fade de lamp sneller.

Edit:
Ik heb nog eens over jou code nagedacht, en het probleem is gewoon dat je code véél te snel is.
Die lus met je fade-in en fade-out, gaat er waarschijnlijk door op een paar milliseconden.
Zet na je PWM commando-regel ook eens een DelayMS 10 of 100 ofzo :-)


Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 23 april 2016, 10:44:25 am
Een zelfbouw PCB LocoNet projectje van een collega modelbouwer uittesten. 32 ingangen met stroomdetectie.

(https://lh3.googleusercontent.com/wr78OvrIhc9XDDndJHXqlB7hKqaWDu3oCL_ajFysli7L37RmRjJo1mQE6Z-ymBs1xHTCzyFZmvhxMfu13xFZK0Spmnyc6bEXMIYVjbgLWw_hXMRd7xsETjrgTjAowX-g1sOz1DhVby8wwwmuncTODhMoFfsh_aj6rpxjn6VQGtRWgf7v5DcJ-eRpbOm5BBXERWF3_cyeTTqntt8xHS4TZ2wK18aFRA_C-PTc_y8WX5oIwpyxJ9Ama_6dltXlFAOotjvv2I-pv54ebTrcOKfzG9OAKDK2Gk_B_ST55eekPOqL59bsMs3Be8sg_cZIevKbKtMEC6IksWZj1XyOl9FtX9CY-ETqhQSMIxo3fJRy21zBrBQ_WJmOiLbP7LoIQ28c3eurjdGr8SG8wOcyQnfVAzMN86OFn_ThYBkL0n-ipmBNgFASxzyhSXsOcFW4Y3uLxiYAH_MJ2HNWsUT8LGKVhIeG1R6RjSCKme-hztyaJgieAa2QnEE3Fiywdx4lFK_Ef_j4RA6kFo4eLLTTbbTwakp0wKqEP_Wqmi-VTPldrBnDp4bTSg648Cz_proKwgtJPg5x=w890-h667-no)

(https://lh3.googleusercontent.com/MlBrjIYlQOS4zJ240xxrDXXFB37uYBBycdN3V1w03fFzw0fH0loSOXzLzJzXCSIjoNll3_i8QU7Z24DQZzkgWR_1mdXEq5btjkIBmrUmZcUUtLEOxvFUdLYN50HWv6Zxy6gV3uvauHvmaG0eMgrBTHEAgAVPVNBn0FDOX3fPfHNCBSTHJXFbby6YOKpCHGL4JwJ1vuonfPCpmkrJliECIe124QitjlaUwXh_g-Rv-66g_J4ST24p_ktaxxW_cypUGwRwlDtoMNRdzEJ_iLOijACQNe5GEUtbu7hvttc4WKuw6PCiwSjEZTrnScrWS9UyIqtlxhdU6NtbAThvocP78lAE-Hp9_0CmIB3qCTD1s9MmWscF_2Slu6VFs_EyeQQulFsUAxlgRTnpA69p59W2RqXHh3mPGzVh0hG0IsiJZ_dgukdRK0UMar886_0hxWtGyQhWz7dEji_-EVaVFnj_LPx_0LCpaqqVm2j2RQD0vdB4ibVJ2jVyHtJuDvH7PiP8QvWwu5y2D1qcfUvgE5dg718RFW4NcHA3euau2N-mZdB6o83E81BrHfkRNs8zpjRQivsO=w890-h667-no)

Geert
Titel: Re: Waar zijn we nu mee bezig ? Microcontrollers
Bericht door: Geert op 07 november 2016, 17:07:40 pm
Even al mijn vorige projecten bundelen tot één groot project. Iets dat al lang op mijn To Do lijstje staat.

Ik ben begonnen om een PCB te maken (hardware en software) waar ik 32 in- en uitgangen ter beschikking heb. Elke in- of uitgang vrij en eenvoud