mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-24 13:21:23 +01:00
Remove myAutomation2.h
This file was never intended for release.
This commit is contained in:
parent
1ec3b173fd
commit
58ef7d25db
192
myAutomation2.h
192
myAutomation2.h
@ -1,192 +0,0 @@
|
|||||||
|
|
||||||
/* This is an automation example file.
|
|
||||||
* The presence of a file called "myAutomation.h" brings EX-RAIL code into
|
|
||||||
* the command station.
|
|
||||||
* The auotomation may have multiple concurrent tasks.
|
|
||||||
* A task may drive one loco through a ROUTE or may simply
|
|
||||||
* automate some other part of the layout without any loco.
|
|
||||||
*
|
|
||||||
* At startup, a single task is created to execute the first
|
|
||||||
* instruction after ROUTES.
|
|
||||||
* This task may simply follow a route, or may SCHEDULE
|
|
||||||
* further tasks (thats is.. send a loco out along a route).
|
|
||||||
*
|
|
||||||
* Where the loco id is not known at compile time, a new task
|
|
||||||
* can be creatd with the command:
|
|
||||||
* </ SCHEDULE [cab] route>
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Include the name to pin mappings for my layout
|
|
||||||
#include "myLayout.h"
|
|
||||||
|
|
||||||
ALIAS(ROUTE_1,1)
|
|
||||||
ALIAS(UP_MOUNTAIN,8)
|
|
||||||
ALIAS(UP_MOUNTAIN_FROM_PROG,88)
|
|
||||||
ALIAS(INNER_LOOP,7)
|
|
||||||
ALIAS(INNER_FROM_PROG,77)
|
|
||||||
|
|
||||||
//EXRAIL // myAutomation must start with the EXRAIL instruction
|
|
||||||
// This is the default starting route, AKA ROUTE(0)
|
|
||||||
// START(999) // this is just a diagnostic test cycle
|
|
||||||
PRINT("started")
|
|
||||||
LCD(0,"EXRAIL RULES")
|
|
||||||
SERIAL("I had one of them but the leg fell off!")
|
|
||||||
DONE // This just ends the startup thread
|
|
||||||
|
|
||||||
|
|
||||||
/*AUTOSTART*/ ROUTE(ROUTE_1,"Close All")
|
|
||||||
LCD(1,"Bingo")
|
|
||||||
CLOSE(TOP_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(Y_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(MIDDLE_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(JOIN_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(LOWER_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(CROSSOVER_TURNOUT) DELAY(10)
|
|
||||||
CLOSE(PROG_TURNOUT) DELAY(10)
|
|
||||||
PRINT("Close All completed")
|
|
||||||
|
|
||||||
ENDTASK
|
|
||||||
|
|
||||||
|
|
||||||
SEQUENCE(UP_MOUNTAIN) // starting at the lower closed turnout siding and going up the mountain
|
|
||||||
PRINT("Up Mountain started")
|
|
||||||
DELAY(10000) // wait 10 seconds
|
|
||||||
RESERVE(BLOCK_LOWER_MOUNTAIN)
|
|
||||||
CLOSE(LOWER_TURNOUT) CLOSE(JOIN_TURNOUT)
|
|
||||||
FWD(60) AT(Y_LOWER)
|
|
||||||
RESERVE(BLOCK_X_MOUNTAIN)
|
|
||||||
CLOSE(Y_TURNOUT) CLOSE(MIDDLE_TURNOUT)
|
|
||||||
FWD(40) AT(MIDDLE_C_BUFFER) STOP
|
|
||||||
FREE(BLOCK_X_MOUNTAIN) FREE(BLOCK_LOWER_MOUNTAIN)
|
|
||||||
DELAY(10000)
|
|
||||||
RESERVE(BLOCK_UPPER_MOUNTAIN) RESERVE(BLOCK_X_MOUNTAIN)
|
|
||||||
CLOSE(MIDDLE_TURNOUT) THROW(Y_TURNOUT) THROW(TOP_TURNOUT)
|
|
||||||
REV(55)
|
|
||||||
AFTER(Y_UPPER) FREE(BLOCK_X_MOUNTAIN)
|
|
||||||
REV(55) AT(TOP_T_BUFFER) STOP // At top of mountain
|
|
||||||
FREE(BLOCK_UPPER_MOUNTAIN)
|
|
||||||
DELAY(5000)
|
|
||||||
RESERVE(BLOCK_UPPER_MOUNTAIN)
|
|
||||||
THROW(TOP_TURNOUT)
|
|
||||||
FWD(60) AT(Y_UPPER)
|
|
||||||
RESERVE(BLOCK_X_MOUNTAIN)
|
|
||||||
THROW(Y_TURNOUT) CLOSE(MIDDLE_TURNOUT)
|
|
||||||
FWD(40) AT(MIDDLE_C_BUFFER) STOP
|
|
||||||
FREE(BLOCK_UPPER_MOUNTAIN) FREE(BLOCK_X_MOUNTAIN)
|
|
||||||
DELAY(6000)
|
|
||||||
RESERVE(BLOCK_LOWER_MOUNTAIN) RESERVE(BLOCK_X_MOUNTAIN)
|
|
||||||
CLOSE(MIDDLE_TURNOUT) CLOSE(Y_TURNOUT) CLOSE(JOIN_TURNOUT) CLOSE(LOWER_TURNOUT)
|
|
||||||
REV(60)
|
|
||||||
AFTER(Y_LOWER) FREE(BLOCK_X_MOUNTAIN)
|
|
||||||
AT(LOWER_C_BUFFER) STOP
|
|
||||||
FREE(BLOCK_LOWER_MOUNTAIN)
|
|
||||||
FOLLOW(UP_MOUNTAIN)
|
|
||||||
|
|
||||||
AUTOMATION(UP_MOUNTAIN_FROM_PROG,"Send up mountain from prog")
|
|
||||||
JOIN
|
|
||||||
RESERVE(BLOCK_LOWER_MOUNTAIN)
|
|
||||||
RESERVE(BLOCK_X_INNER)
|
|
||||||
RESERVE(BLOCK_X_OUTER)
|
|
||||||
// safe to cross
|
|
||||||
THROW(PROG_TURNOUT) THROW(CROSSOVER_TURNOUT) THROW(JOIN_TURNOUT)
|
|
||||||
FWD(45)
|
|
||||||
AFTER(JOIN_AFTER) STOP
|
|
||||||
CLOSE(PROG_TURNOUT) CLOSE(CROSSOVER_TURNOUT) CLOSE(JOIN_TURNOUT)
|
|
||||||
FREE(BLOCK_X_OUTER) FREE(BLOCK_X_INNER)
|
|
||||||
CLOSE(LOWER_TURNOUT)
|
|
||||||
REV(40) AT(LOWER_C_BUFFER) STOP
|
|
||||||
FREE(BLOCK_LOWER_MOUNTAIN)
|
|
||||||
FOLLOW(UP_MOUNTAIN)
|
|
||||||
|
|
||||||
SEQUENCE(INNER_LOOP)
|
|
||||||
FWD(50)
|
|
||||||
AT(CROSSOVER_INNER_BEFORE)
|
|
||||||
RESERVE(BLOCK_X_INNER)
|
|
||||||
CLOSE(CROSSOVER_TURNOUT)
|
|
||||||
FWD(50)
|
|
||||||
AFTER(CROSSOVER_INNER_AFTER)
|
|
||||||
FREE(BLOCK_X_INNER)
|
|
||||||
FOLLOW(INNER_LOOP)
|
|
||||||
|
|
||||||
|
|
||||||
// Turnout definitions
|
|
||||||
TURNOUT(TOP_TURNOUT, TOP_TURNOUT,0,"Top Station")
|
|
||||||
TURNOUT(Y_TURNOUT, Y_TURNOUT,0,"Mountain join")
|
|
||||||
TURNOUT(MIDDLE_TURNOUT, MIDDLE_TURNOUT,0,"Middle Station")
|
|
||||||
TURNOUT(JOIN_TURNOUT,JOIN_TURNOUT,0)
|
|
||||||
TURNOUT(LOWER_TURNOUT,LOWER_TURNOUT,0)
|
|
||||||
TURNOUT(CROSSOVER_TURNOUT,CROSSOVER_TURNOUT,0)
|
|
||||||
TURNOUT(PROG_TURNOUT,PROG_TURNOUT,0)
|
|
||||||
|
|
||||||
// Single slip protection
|
|
||||||
ONTHROW(2)
|
|
||||||
THROW(1)
|
|
||||||
DONE
|
|
||||||
ONCLOSE(1)
|
|
||||||
CLOSE(2)
|
|
||||||
DONE
|
|
||||||
|
|
||||||
|
|
||||||
ROUTE(61,"Call return test")
|
|
||||||
PRINT("In 61 test 1")
|
|
||||||
CALL(62)
|
|
||||||
PRINT("In 61 test 2")
|
|
||||||
CALL(62)
|
|
||||||
PRINT("In 61 test 3")
|
|
||||||
ACTIVATE(100,2)
|
|
||||||
DEACTIVATE(100,2)
|
|
||||||
DONE
|
|
||||||
|
|
||||||
SEQUENCE(62)
|
|
||||||
PRINT("In seq 62")
|
|
||||||
RETURN
|
|
||||||
|
|
||||||
ROUTE(63,"Signal test 40,41,42")
|
|
||||||
SIGNAL(40,41,42)
|
|
||||||
DELAY(2000)
|
|
||||||
RED(40)
|
|
||||||
DELAY(2000)
|
|
||||||
AMBER(40)
|
|
||||||
DELAY(2000)
|
|
||||||
GREEN(40)
|
|
||||||
FOLLOW(63)
|
|
||||||
|
|
||||||
|
|
||||||
ROUTE(64,"Func test 6772")
|
|
||||||
XFON(6772,1)
|
|
||||||
DELAY(5000)
|
|
||||||
XFOFF(6772,1)
|
|
||||||
DELAY(5000)
|
|
||||||
FOLLOW(64)
|
|
||||||
|
|
||||||
ROUTE(65,"Negative sensor test")
|
|
||||||
PRINT(" WAIT for -176")
|
|
||||||
AT(-176)
|
|
||||||
PRINT(" WAIT for 176")
|
|
||||||
AT(176)
|
|
||||||
PRINT("done")
|
|
||||||
DONE
|
|
||||||
|
|
||||||
ROUTE(123,"Activate stuff")
|
|
||||||
ACTIVATEL(5)
|
|
||||||
ACTIVATE(7,2)
|
|
||||||
DEACTIVATE(3,2)
|
|
||||||
DEACTIVATEL(6)
|
|
||||||
DONE
|
|
||||||
|
|
||||||
ONACTIVATEL(5)
|
|
||||||
PRINT("ACT 5")
|
|
||||||
DONE
|
|
||||||
ONACTIVATE(7,2)
|
|
||||||
PRINT("ACT 7,2")
|
|
||||||
DONE
|
|
||||||
ONDEACTIVATE(7,2)
|
|
||||||
PRINT("DEACT 7,2")
|
|
||||||
DONE
|
|
||||||
ONDEACTIVATEL(5)
|
|
||||||
PRINT("DEACT 5")
|
|
||||||
DONE
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user