Blokksignalmodul
I MJ-bladet 3-4/91,3/92 og 2/94 beskriver Svein-Martin Holt hvordan man kan lage norske signaler for MJ-anlegget. I de to siste artiklene finner man et kretskortskjema for styringselektronikk.
Innhold
Original styringsmodul
Styringsmodulen som beskrives har følgende mangler:
- ikke et komplett sikringsanlegg for blokkstyring,
- ingen innebygd mulighet for avvikende spor,
- ingen innebygd mulighet for enkelsporet drift,
- trenger hele 6 kabler, der tre er felles (2 leder 16V~, felles jord) og tre forsignalkabler som føres mellom hvert modulpar,
- trenger ekstern relékrets for strømstyring,
- komplisert kretskort med 4 logikkbrikker.
PICAXE styringsmodul
Mikrokontrolleren PICAXE har flere fordeler i forhold til logikkbrikker, blandt annet:
- komplett sikringsanlegg for blokkstyring,
- gir signal 20 (stopp) dersom blokken er opptatt (se systemer for detektering av belagte spor),
- støtte for enkeltsporet drift,
- støtte for utkjør fra avvikende spor,
- støtte for innkjør til avvikende spor,
- trenger kun 3 kabler (felles +5V, felles Jord og blokkstyring mellom moduler), der felles +5v og felles Jord kan brukes av andre +5V-moduler (digitalisering med PICAXE, digitalisering med logikkbrikker),
- relékrets for strømstyring på kretskortet,
- enkelt kretskort,
- kompatibelt med Holts signalmaster dersom motstandene i signalhodet byttes med 150Ω-motstandere.
Styringsmodulen bruker en 18pins PICAXE-brikke. Valget av brikken ble gjordt ved å analysere behovet for inn og utganger. Holts signalmast krever 5 utganger (grønn topp, rød, grønn bunn, gul og grønn forsignal). Reléet trenger en utgang og blokkstyringslinjen trenger den siste og 7ende utgangen. Brikken har 5 innganger, en for blokkstyringslinjen (digital), en for utkjør, en for avvikende utkjør og en for opphevelse av blokken (de tre siste er aktiv lave). I tillegg trenger signalhodet en tilkobling for jord, reléet en for inngående banestrøm og selvfølgelig tilkoblingene til Vcc og Jord. Kretskortet vil følgelig ha 15 tilkoblinger.
NB! Styringsmodulen kan ikke tilkobles databussen til prosjektet digitalisering med PICAXE.
Pinliste
Pinne | Symbol | Funksjon |
1 | inn2 | opphev signalbildet for enkeltsporet drift |
2,3 | programmering | kan ikke brukes |
4 | Reset | tilkoblet +5V |
5 | Jord | tilkoblet jord |
6 | ut0 | tilkoblet relé |
7 | ut1 | grønn topp |
8 | ut2 | rød |
9 | ut3 | grønn bunn |
10 | ut4 | gul forsignal |
11 | ut5 | grønn forsignal |
12 | ut6 | tilgjengelig |
13 | ut7 | blokkstyringslinje (til neste blokkmodul) |
14 | Vcc | tilkoblet +5V |
15 | inn6 | blokkstyringslinje (fra forrige blokkmodul) |
16 | inn7 | kjør (signal 22) |
17 | inn0 | avvikende (signal 21) |
18 | inn1 | signalfelling (signal 20) |
Reléet
Fra pinne 6 kobles en 10K-motstand til basen på en BC548 darlingtontransistor. Transistorens emitter kobles til jord, mens collector kobles til et NO (normalt åpen)-relé og positiv ende av en 1N4001-diode. Diodens negative (Viktig! Å koble dioden motsatt vei kan ødelegge transistoren) ende og reléets annen side, kobles til Vcc.
Programmering
PICAXE-brikken programmeres via PICAXEs programeringsgrensesnitt (PICAXE). Modulens funksjon (blokksignal, ut-/innkjør og enkeltsporet drift) programmeres når den enkelte modulen slås på. Hold de oppgitte inngangene mot jord inntil oppgitt tilbakemelding vises. Modulens funksjon kan omprogrammeres inntil 1000 ganger.
Funksjon | Inngang | Tilbakemelding | Merknad |
Blokksignal | Signal 20 (Stopp) | Rød+Gul | Signal 22 (kjør) er standard |
Utkjør | Signal 21 (Avvik) | Øvre grønn+Gul | Sender ikke signalbilde til forsignal |
Innkjør | Signal 22 (Kjør) | 2 Grønn+Gul | Forsignal er avslått |
Blokksignal (enkeltsporet) | Signal 21+22 | 2 Grønn+Grønn | Signal 22 (kjør) er standard |
Utkjør (enkeltsporet) | Signal 20+21 | Nedre Grønn+Grønn | Sender ikke signalbilde til forsignal |
Innkjør (enkeltsporet) | Signal 20+22 | Rødt+Grønn | Forsignal er avslått |
Programkode
Programmet er under utvikling
' Blokksignalmodul V0 PICAXE18 ' Programmet er frigitt for MJwiki.no ' Siste versjon av programmet finnes på ' http://mjwiki.no/wiki/index.php/Blokksignalmodul ' ================================================ ' Versjon 0, 8. mars 2007 ' + Variabler og programmeringsrutiner ' ================================================ ' Signalbilder symbol SignalStopp=%00000100 symbol SignalAvvik=%00000011 symbol SignalKjor= %00001011 symbol ForsignalStopp=%00010000 symbol ForsignalAvvik=%00110000 symbol ForsignalKjor= %00100000 symbol OpphevSignalBilde=%00000001 ' Blinkhastighet i ms symbol Blink=475 ' Programmering symbol Programlager=$00 symbol Program=b2 ' Kommunikasjon symbol SendStop="S" symbol SendAvvik="A" symbol SendKjor="K" symbol SendTogKommer="O" ' Andre symboler symbol LinjeInn=Pin6 symbol LinjeUt=Pin7 symbol X=b6 symbol Y=b4 ' =========================================== ' Programmeringsrutine ' Denne rutinen angir signalmodulens funksjon ' Modulen kan progrmmeres inntil signal vises ' =========================================== ' les programlager read Programlager,Program ' programmer modulens funksjon Prog: ' vis klar for programmering for X=2 to 62 step 2 pins=X pause 150 next X pins=0 pause Blink ' les innganger X=pins ' sett signalbilde dersom modulen er programmert ' og modulen ikke skal omprogrammeres if X=0 and Program<>0 then SettSignalBilde ' restart programmering ved manglende input if X=0 then Prog ' flytt signal 22 til rett sted Y=X*32 Y=Y/32 X=X/32 X=X+Y ' lagre program lookup X,(0,"XBxEbe",0),Program write Programlager, Program ' Vis tilbakemelding lookdown Program,("EXBexb"),X lookup X,(%00011010,%00010010,%00010100,%00100100,%00101000,%00101010),Y for X=1 to 10 pins=Y pause Blink pins=0 pause Blink next X ' sett standard signalbilde SettSignalBilde: lookdown Program,("EXBexb"),X lookup X,(SignalStopp,SignalStopp,SignalKjor,SignalStopp,Signalstopp,SignalKjor),pins ' ========================= ' HOVEDPROGRAM ' ========================= Loop: