I/O mapping for M94/95
Moderator: cnckeith
-
- Posts: 69
- Joined: Wed Feb 16, 2022 2:09 pm
- Acorn CNC Controller: Yes
- Allin1DC CNC Controller: No
- Oak CNC controller: No
- CNC Control System Serial Number: none
- DC3IOB: No
- CNC12: Yes
- CNC11: No
- CPU10 or CPU7: No
I/O mapping for M94/95
Wondering if there is a document available that lists the I/O mapping for M94/95. I would like to force some inputs on the Ether1616 card in a macro.
-
- Posts: 2294
- Joined: Thu Sep 23, 2021 3:49 pm
- Acorn CNC Controller: Yes
- Allin1DC CNC Controller: No
- Oak CNC controller: No
- CNC Control System Serial Number: 6433DB0446C1-08115074
- DC3IOB: No
- CNC12: Yes
- CNC11: No
- CPU10 or CPU7: No
- Location: Germany
Re: I/O mapping for M94/95
M94/1 Output 1
M94/2 Output 2
....
Uwe
M94/2 Output 2
....
Uwe
Re: I/O mapping for M94/95
No.
M94/1 sends request #1 to the PLC program. What physical PLC output it affects, if any, depends entirely on PLC logic.
In the case of Acorn controls, the PLC logic in turn depends on your Wizard output selections.
The outputs on the first Ether1616 board are OUT33 - OUT48.
There are no M94/M95 request numbers that specifically turn, say, OUT33 on or off.
If you do not want to do any of your own PLC programming, then you are limited to what the Acorn wizard provides.
You could assign the name "OUTPUT1" (which is not the same thing as OUT1, the first output on the Acorn board) to OUT33. If you do that, then you could use M94/61 or the provided M61 macro to turn it on, and M95/61 or the provided M81 macro to turn it off.
Regarding Uwe's examples:
M94/1 turns on request #1, which in all standard PLC programs is the M3 run-spindle-forward request.
M94/2 turns on request #2, which in all standard PLC programs is the M4 run-spindle-reverse request.
Whether either of those codes turns an output relay on or off depends on whether and where you have assigned SpindleEnableOut, SpindleDirectionOut, SpindleFwd, or SpindleRev; and also depends on whether the rest of the PLC logic would allow the spindle to be started with an auto mode request.
M94/1 sends request #1 to the PLC program. What physical PLC output it affects, if any, depends entirely on PLC logic.
In the case of Acorn controls, the PLC logic in turn depends on your Wizard output selections.
The outputs on the first Ether1616 board are OUT33 - OUT48.
There are no M94/M95 request numbers that specifically turn, say, OUT33 on or off.
If you do not want to do any of your own PLC programming, then you are limited to what the Acorn wizard provides.
You could assign the name "OUTPUT1" (which is not the same thing as OUT1, the first output on the Acorn board) to OUT33. If you do that, then you could use M94/61 or the provided M61 macro to turn it on, and M95/61 or the provided M81 macro to turn it off.
Regarding Uwe's examples:
M94/1 turns on request #1, which in all standard PLC programs is the M3 run-spindle-forward request.
M94/2 turns on request #2, which in all standard PLC programs is the M4 run-spindle-reverse request.
Whether either of those codes turns an output relay on or off depends on whether and where you have assigned SpindleEnableOut, SpindleDirectionOut, SpindleFwd, or SpindleRev; and also depends on whether the rest of the PLC logic would allow the spindle to be started with an auto mode request.
-
- Posts: 2294
- Joined: Thu Sep 23, 2021 3:49 pm
- Acorn CNC Controller: Yes
- Allin1DC CNC Controller: No
- Oak CNC controller: No
- CNC Control System Serial Number: 6433DB0446C1-08115074
- DC3IOB: No
- CNC12: Yes
- CNC11: No
- CPU10 or CPU7: No
- Location: Germany
Re: I/O mapping for M94/95
current M94 assignment of you setup is in the PLC,
Here an example
Here an example
Code: Select all
;------------------------------------------------------------------------------
; M functions - The System Variables in this section inform the
; PLC that an M function has been requested.
;------------------------------------------------------------------------------
M3 IS SV_M94_M95_1 ;(Spindle CW)
M4 IS SV_M94_M95_2 ;(Spindle CCW)
M8 IS SV_M94_M95_3 ;(Flood On)
M10L IS SV_M94_M95_4 ;SET OpenChuck, RST CloseChuck
M7 IS SV_M94_M95_5 ;(Mist)
M11L IS SV_M94_M95_6 ;RST OpenChuck, SET CloseChuck
M6 IS SV_M94_M95_7 ;
ManualLubePump_SV IS SV_M94_M95_8 ;Activates LubePump Manually
; IS SV_M94_M95_9 ;
M10M IS SV_M94_M95_10; SET TurnClampOn, M11 RST TurnClampOn
; IS SV_M94_M95_11;
; IS SV_M94_M95_12;
M13 IS SV_M94_M95_13; Cutoff On, M14 Cutoff Off
; IS SV_M94_M95_14;
M15 IS SV_M94_M95_15; M15 Tool Unclamp On, M16 Tool Unclamp Off
; IS SV_M94_M95_16;
M18 IS SV_M94_M95_18;
M19 IS SV_M94_M95_19;(Spindle Orient), M20 Off
; IS SV_M94_M95_20;
M22 IS SV_M94_M95_22; Turn on PartChute, M23 off
; IS SV_M94_M95_23;
M27 IS SV_M94_M95_27; Turn on VacuumOn, M28 off
DustFootActivate_SV IS SV_M94_M95_28; DustFootActivate Output
LaserAlignActivate_SV IS SV_M94_M95_29; LaserAlignActivate Output
PopUpPins_SV IS SV_M94_M95_30; PopUpPins Output
SpindleCooling_SV IS SV_M94_M95_31; SpindleCooling Output
M32 IS SV_M94_M95_32; TailStockInOut On, M33 TailStockInOut Off
M35 IS SV_M94_M95_35; SET DustCollectionOn, M36 RST DustCollectionOn
M37 IS SV_M94_M95_37; Set Laser Enable
PWMSelect_SV IS SV_M94_m95_38; Set PWMSelect
LaserReset_SV IS SV_M94_M95_39; Set LaserReset
PutbackComplete_SV IS SV_M94_M95_40;
M41 IS SV_M94_M95_41 ;(Spindle Low Range)
M42 IS SV_M94_M95_42 ;(Spindle Medium Low Range)
M43 IS SV_M94_M95_43 ;(Spindle Medium High Range)
OscillationOn_SV IS SV_M94_M95_46 ;(OscillationOn)
M51_SV IS SV_M94_M95_51 ;(C-Axis Enable)
M61 IS SV_M94_M95_61; OUTPUT1 (NOT the same as OUT1), M81 Off
M62 IS SV_M94_M95_62; OUTPUT2 (NOT the same as OUT2), M82 Off
M63 IS SV_M94_M95_63; OUTPUT3 (NOT the same as OUT3), M83 Off
M64 IS SV_M94_M95_64; OUTPUT4 (NOT the same as OUT4), M84 Off
M65 IS SV_M94_M95_65; OUTPUT5 (NOT the same as OUT5), M85 Off
M66 IS SV_M94_M95_66; OUTPUT6 (NOT the same as OUT6), M86 Off
M67 IS SV_M94_M95_67; OUTPUT7 (NOT the same as OUT7), M87 Off
M68 IS SV_M94_M95_68; OUTPUT8 (NOT the same as OUT8), M88 Off
M80_SV IS SV_M94_M95_80; (CarouselIn)
M81_SV IS SV_M94_M95_81; (CarouselOut)
DisableAxis1Limit IS SV_M94_M95_101
DisableAxis2Limit IS SV_M94_M95_102
DisableAxis3Limit IS SV_M94_M95_103
DisableAxis4Limit IS SV_M94_M95_104
M94M95111_SV IS SV_M94_M95_111
M94M95112_SV IS SV_M94_M95_112
M94M95113_SV IS SV_M94_M95_113
M94M95114_SV IS SV_M94_M95_114
M94M95115_SV IS SV_M94_M95_115
M94M95116_SV IS SV_M94_M95_116
M94M95117_SV IS SV_M94_M95_117
M94M95118_SV IS SV_M94_M95_118
M94M95119_SV IS SV_M94_M95_119
M94M95120_SV IS SV_M94_M95_120
M94M95121_SV IS SV_M94_M95_121
M94M95122_SV IS SV_M94_M95_122
M94M95123_SV IS SV_M94_M95_123
M94M95124_SV IS SV_M94_M95_124
M94M95125_SV IS SV_M94_M95_125
M94M95126_SV IS SV_M94_M95_126