Auteur Topic: handregelaar voor marklin systeem analoog  (gelezen 589 keer)

Offline raf

  • Forumlid
  • Berichten: 4.053
  • Voornaam: raf
handregelaar voor marklin systeem analoog
« Gepost op: 04 januari 2016, 16:34:58 pm »
reeds een tijdje klaar maar nu eventjes tijd om er wat over te schrijven
hier de hand regelaar met maar 4 druk toetsen om te kunnen rijden op het rangeer terrein of verzorging depot

groen en blauw is optrekken en afremmen
zwart is over spanning om achteruit te rijden
en rood is nood stop waarbij het spoor volledig stroom loos gemaakt word wat bij de andere knoppen niet gebeurt
nu wat filmpkes
https://www.youtube.com/watch?v=3iN40E6b_t0
eerste proef en de loco reeds dus toppy
https://www.youtube.com/watch?v=UxbZr5caFws
hoe langzaam kunnen we gaan met analoge motoren uit de jaren stilletjes
https://www.youtube.com/watch?v=9pmBpH4aMRw
is er ook nog wat kracht over met deze pwm regelaar
met 6 wagons en dan een verbruik van 280 miliamp ben ik tevreden
https://www.youtube.com/watch?v=NcCOm9EqWQo

een andere loco en hoe snel kunnen we gaan maar kunnen we ok langzaam
hier zie je ook dat het omschakelen perfect werkt
dus een tevreden man
de code van de regelaar
        Device 16F628A                ;Gebruik een 16F628A type
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF

Declare Xtal 4

Declare All_Digital TRUE              ;Alle ingangen digitaal
Declare PortB_Pullups On
Declare CCP1_Pin PORTB.3
HPWM 1, 0, 2000           ;Reset de CCP/PWM module (Op 0% = constant laag)



;        76543210
TRISA = %00000000   ;in uit         
TRISB = %11110000   ;in uit
PORTA = %00000000         
PORTB = %11110000

;Variabele declareren
Dim Duty            As Byte   ;'Duty' is de variabele die de snelheid v.d. motor bepaalt 
Dim pauze As Word
Symbol s1 = PORTB.4
Symbol s2 = PORTB.5   ;gas
Symbol s3 = PORTB.6
Symbol s4 = PORTB.7
Symbol relay = PORTB.2
Symbol led1 = PORTA.2

Clear
led1 = 1                       
 DelayMS pauze
 ;ingangen aan poortb 4 5 6 7
 ;uitgangen aan B 3
 


start:
   
While 1 = 1                   ;Oneindige lus
   If Duty < 10 Then led1 = 1
  If Duty > 150 Then led1 = 1
  If s2 = 0 Then GoSub gas   ;gas
  If s4 = 0 Then GoSub reme  ;remmen
  If s1 =0 Then GoSub test   ;noodstop
  If s3 = 0 Then GoSub regelen   ;regelen
  HPWM 1, Duty, 5000
  If Duty < 40 Then pauze = 10
  If Duty > 40 Then pauze = 2
Wend                          ;Terug naar WHILE

  gas:
  led1 = 1
     If s2 = 0  And Duty < 254 Then Duty = Duty + pauze
   
  If Duty > 254 Then Duty = 255
    While s2 = 0            ;Zolang S2 is ingedrukt...
    Wend
    led1 = 0
  Return

  reme:
  led1 = 1
  If s4 = 0  And Duty > 4 Then Duty = Duty - 2
  If Duty < 5 Then Duty = 4
   While s4 = 0            ;Zolang S4 is ingedrukt...
    Wend
    led1 = 0
    Return
   
    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
 
  regelen:
  led1 = 1
  Duty = 0
  HPWM 1,Duty,5000
 
  relay = 1
  DelayMS 400
  relay = 0
   While s3 = 0            ;Zolang S3 is ingedrukt...
    Wend
    Duty = 4
    HPWM 1,Duty,5000
    led1 = 0
 Return
meer filmpkes als de schakeling aan de baan is aan gesloten en er echt op het verzorging depot kan rond gereden worden

gr raf

Offline PietB

  • Forumlid
  • Berichten: 4.546
    • Modelbaan van Piet.
  • Voornaam: Pieter
Re: handregelaar voor marklin systeem analoog
« Reactie #1 Gepost op: 04 januari 2016, 21:03:02 pm »
Maar dat ziet er prima uit Raf.
Klasse. Ik heb nog niet je code uitgeplozen maar hoe heb je de verlichting gedaan?

grt Piet.
Märklin, H0 1:87 C/K-Rails Intellibox + loconet.
NS Tijdperk: III t/m VI, met DB BR01 als museumtrein.
Märklin NS1212 NS1213 - 3055 NS1139 - 3324 en DB-BR01 - 3048 - Roco NS2305 - 69456 en Kandt 691 - 69956 Fleischmann Plan V - 4472 Piko Hondekop - 57320

Offline raf

  • Forumlid
  • Berichten: 4.053
  • Voornaam: raf
Re: handregelaar voor marklin systeem analoog
« Reactie #2 Gepost op: 04 januari 2016, 21:55:42 pm »
piet doordat alles analoog rijd kan ik dus omdat ik ledjes heb ingebouwd deze laten branden
ik kan dus de pwm puls zo kort zetten dat de motor niet meer draait (ronkt)maar de ledjes nog branden
met normale lampjes lukt dit dus niet
de code kan altijd nog beter denk maar ja ik programmeer nog op de oude manier die ook nog steeds werkt
ik heb wel een trafo moeten ombouwen om te kunnen schakelen zie hier het schema


ik heb dus een aftakking gemaakt aan het overspanning contact en de diode bruggen moet en zo aangesloten worden anders krijg je kort sluiting
ik rij dus analoog gelijkstroom hou daar dus wel rekening mee

gr raf