############################################ # Generic section ############################################ #========================================== # Components declaration #========================================== loadrt trivkins loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS addf motion-command-handler servo-thread addf motion-controller servo-thread loadusr halui -ini maurice.ini #========================================== # Global machine logic #========================================== net state-op => iocontrol.0.emc-enable-in #========================================== # X axis #========================================== net X-amp <= joint.0.amp-enable-out net X-fault => joint.0.amp-fault-in net X-poscmd <= joint.0.motor-pos-cmd net X-posfb => joint.0.motor-pos-fb #net X-homed => joint.0.home-sw-in #net Home-X <= joint.0.homing net X-inhibit => motion.feed-inhibit #net X-PoT => joint.0.pos-lim-sw-in #net X-NoT => joint.0.neg-lim-sw-in #========================================== # Z axis #========================================== net Z-amp <= joint.2.amp-enable-out net Z-fault => joint.2.amp-fault-in net Z-poscmd <= joint.2.motor-pos-cmd net Z-posfb => joint.2.motor-pos-fb #net Z-homed => joint.2.home-sw-in #net Home-Z <= joint.2.homing #net Z-inhibit => motion.feed−inhibit #net Z-PoT => joint.2.pos-lim-sw-in #net Z-NoT => joint.2.neg-lim-sw-in ############################################ # Hardware section ############################################ #========================================== # Components declaration #========================================== loadrt classicladder_rt addf classicladder.0.refresh servo-thread loadusr classicladder maurice.clp loadusr -W lcec_conf maurice.xml loadrt lcec addf lcec.read-all servo-thread addf lcec.write-all servo-thread setp lcec.0.0.drivecontrol-1 1 setp lcec.0.0.drivecontrol-2 1 setp lcec.0.1.drivecontrol-1 1 setp lcec.0.1.drivecontrol-2 1 setp lcec.0.0.modecontrol-0 0 setp lcec.0.0.modecontrol-4 0 setp lcec.0.1.modecontrol-0 0 setp lcec.0.1.modecontrol-4 0 #========================================== # Global machine logic #========================================== net state-op <= lcec.state-op #========================================== # X axis #========================================== net X-amp => lcec.0.0.drivecontrol-3 => lcec.0.0.drivecontrol-0 net X-poscmd => lcec.0.0.poscommand net X-posfb <= lcec.0.0.pos net X-fault <= lcec.0.0.drivestatus-3 net X-stat-pos <= lcec.0.0.modestatus-3 net X-stat-home <= lcec.0.0.modestatus-2 net X-homingok <= lcec.0.0.drivestatus-12 net X-athome <= lcec.0.0.drivestatus-10 net X-ctrl-home => lcec.0.0.modecontrol-1 => lcec.0.0.modecontrol-2 net X-homestart => lcec.0.0.drivecontrol-4 net X-ctrl-pos => lcec.0.0.modecontrol-3 net X-PoT <= lcec.0.0.inputs-1 net X-NoT <= lcec.0.0.inputs-0 #========================================== # Z axis #========================================== net Z-amp => lcec.0.1.drivecontrol-3 => lcec.0.1.drivecontrol-0 net Z-poscmd => lcec.0.1.poscommand net Z-posfb <= lcec.0.1.pos net Z-fault <= lcec.0.1.drivestatus-3 net Z-stat-pos <= lcec.0.1.modestatus-3 net Z-stat-home <= lcec.0.1.modestatus-2 net Z-homingok <= lcec.0.1.drivestatus-12 net Z-athome <= lcec.0.1.drivestatus-10 net Z-ctrl-home => lcec.0.1.modecontrol-1 => lcec.0.1.modecontrol-2 net Z-homestart => lcec.0.1.drivecontrol-4 net Z-ctrl-pos => lcec.0.1.modecontrol-3 net Z-PoT <= lcec.0.1.inputs-1 net Z-NoT <= lcec.0.1.inputs-0 #========================================== # ClassicLadder #========================================== # Inputs net X-stat-home => classicladder.0.in-00 net X-stat-pos => classicladder.0.in-01 net X-homingok => classicladder.0.in-02 net X-athome => classicladder.0.in-03 net Z-stat-home => classicladder.0.in-04 net Z-stat-pos => classicladder.0.in-05 net Z-homingok => classicladder.0.in-06 net Z-athome => classicladder.0.in-07 net Home-All => classicladder.0.in-08 net Home-X => classicladder.0.in-09 net Home-Z => classicladder.0.in-10 # Outputs net X-homed <= classicladder.0.out-00 net Z-homed <= classicladder.0.out-01 net X-inhibit <= classicladder.0.out-02 net Z-inhibit <= classicladder.0.out-03 net X-ctrl-home <= classicladder.0.out-04 net X-ctrl-pos <= classicladder.0.out-05 net Z-ctrl-home <= classicladder.0.out-06 net Z-ctrl-pos <= classicladder.0.out-07 net X-homestart <= classicladder.0.out-08 net Z-homestart <= classicladder.0.out-09