Auteur Topic: Waar zijn we nu mee bezig ? Microcontrollers  (gelezen 296110 keer)

Offline conducteur

  • Forumlid
  • Berichten: 6.018
  • As a finishing touch, God created the dutch!
    • http://www.treinbaanrian.be
  • Voornaam: Rian
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #375 Gepost 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?
Rian 2-Rail DCC NMBS TPIII
Grote Modeltreinruilbeurs Blankenberge Pasen 2016
Zaal Forum

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #376 Gepost 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...
Groetjes, Peter


Offline eve

  • Forumlid
  • Berichten: 4.194
  • Voornaam: Erik
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #377 Gepost 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 ?


Offline Geert

  • Forumlid
  • Berichten: 1.708
    • Homepage
  • Voornaam: Geert
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #378 Gepost 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

Schaal HO - digitaal zelfbouw - Favoriete Lok: V200 DB
Huidig project: LocoNet In/Output

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #379 Gepost 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, maar alles is er te vinden.  Zelf de source in ASM:
http://www.digital-bahn.de/develop/source.htm
Gedaan met warm water uitvinden  ;).

Groetjes, Peter


Offline eve

  • Forumlid
  • Berichten: 4.194
  • Voornaam: Erik
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #380 Gepost 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

Offline Geert

  • Forumlid
  • Berichten: 1.708
    • Homepage
  • Voornaam: Geert
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #381 Gepost 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
Schaal HO - digitaal zelfbouw - Favoriete Lok: V200 DB
Huidig project: LocoNet In/Output

Offline Sattrickske

  • Forumlid
  • Berichten: 978
  • Failure does not equal defeat
    • Mijn blog
  • Voornaam: Patrick
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #382 Gepost 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):

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #383 Gepost 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  ;) ).

Groetjes, Peter


Offline Sattrickske

  • Forumlid
  • Berichten: 978
  • Failure does not equal defeat
    • Mijn blog
  • Voornaam: Patrick
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #384 Gepost op: 03 mei 2013, 22:41:12 pm »
Kan je ook met gewone componenten hoor!
Elektronisch schema:


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)?

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #385 Gepost op: 03 mei 2013, 22:49:42 pm »
...Hoe kan ik bestanden opladen (het C bestandje is 8Kb)?

Patrick: PM!
Groetjes, Peter


Offline Sattrickske

  • Forumlid
  • Berichten: 978
  • Failure does not equal defeat
    • Mijn blog
  • Voornaam: Patrick
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #386 Gepost op: 03 mei 2013, 22:59:06 pm »
En hier is dan de broncode:
C code servocontroller

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #387 Gepost 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.

Groetjes, Peter


Offline Sattrickske

  • Forumlid
  • Berichten: 978
  • Failure does not equal defeat
    • Mijn blog
  • Voornaam: Patrick
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #388 Gepost 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:

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.

Offline PeterC

  • Forumlid
  • Berichten: 3.355
    • JAL pagina
  • Voornaam: Peter
Re: Waar zijn we nu mee bezig ? Microcontrollers
« Reactie #389 Gepost 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...

Groetjes, Peter