Denford Triac Carousel ATC

All things related to the Centroid Acorn CNC Controller

Moderator: cnckeith

Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

Chaz wrote: Fri Jun 21, 2024 6:39 am Interesting that M65 and M66 turn on the On Board Relay 5 and 6 respectively. That means that M63 does nothing as the On Board Relay 3 is already on. Why is this not mapping to the Eth1616 board? When I try and run M111 or M113 then I get a '503 Invalid M function' error.
Just doing more research

https://www.centroidcnc.com/downloads/c ... PLCMAN.pdf

This explains an older way on how M codes are mapped. I can confirm that I have an M63 function, that calls OUTPUT3. Any idea why it does nothing?

;------------------------------------------------------------------------------
; Filename: mfunc63.mac
; Wizard OUTPUT3 M-code Macro: M63
; Description: User Customizable Macro
; Notes: Use Acorn Wizard i/o map to set Acorn Output 3 = to "OUTPUT3" then this macro (M63) will turn on that output
; Requires:
; Please see TB300 for tips on writing custom macros.
;------------------------------------------------------------------------------

IF #50010 ;Prevent lookahead from parsing past here
IF #4201 || #4202 THEN GOTO 1000 ;Skip macro if graphing or searching

N100 ;Insert your code between N100 and N1000

M94 /63 ;Request OUTPUT3

N1000 ;End of Macro


Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

On that topic, M62, 61 dont work / react either. Only outputs 5 upwards can be switched with their respective M codes.


Greg
Posts: 37
Joined: Wed Feb 03, 2021 11:12 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

Re: Denford Triac Carousel ATC

Post by Greg »

So just to be clear the turret rotates one way but wont reverse the relay to spin the other way?


Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

Greg wrote: Fri Jun 21, 2024 11:11 am So just to be clear the turret rotates one way but wont reverse the relay to spin the other way?
Yep, as when it reverses is only enables the reverse relay but it also needs to enable the 'run' relay as they work as a pair.

Let me explain a bit better ...

To go forward, a contactor is closed. To reverse, it still needs this 'run contactor' but also a contactor which is reversing the wires. There is no 'reverse' naturally on this motor.


Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

Carousel.png
This diagram shows. CPR is the run relay. CCR is the reverse relay. Forward is CPR, Reverse is CPR + CCR.


cncsnw
Community Expert
Posts: 4535
Joined: Wed Mar 24, 2010 5:48 pm

Re: Denford Triac Carousel ATC

Post by cncsnw »

Chaz wrote: Fri Jun 21, 2024 10:41 am On that topic, M62, 61 dont work / react either. Only outputs 5 upwards can be switched with their respective M codes.
You are still confusing physical outputs (such as OUT1, OUT3, and OUT35) with the token names for assigned functions (such as "OUTPUT1" or "OUTPUT3" or "ATC_CarouselForward").

A given output can have only one assigned function at a time. For example, you could make OUT35 (the third relay on the expansion board) be "OUTPUT3" if you wanted, and then it would respond to M63 and M83; or you could make it "ATC_CarouselForward", so that it responds to whatever built-in PLC logic controls that token. You cannot have it do both. At least, not using the Acorn Wizard.

In your 6/19/24 report, you have the following tokens assigned to the output relays:

Code: Select all

SpinFWD                IS OUT1
Flood                  IS OUT2
LubePump               IS OUT3
NoFaultOut             IS OUT4
OUTPUT5                IS OUT5
OUTPUT6                IS OUT6
OUTPUT7                IS OUT7
OUTPUT8                IS OUT8
ATC_CarouselIn         IS OUT33
ATC_CarouselOut        IS OUT34
ATC_CarouselForward    IS OUT35
ATC_CarouselReverse    IS OUT36
UnclampTool            IS OUT37
Since you have assigned "OUTPUT5" to the OUT5 relay on the Acorn board, you are able to use it with M65 and M85.

Since you do not have "OUTPUT3" assigned to any relay, M63 and M83 do nothing.


Greg
Posts: 37
Joined: Wed Feb 03, 2021 11:12 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

Re: Denford Triac Carousel ATC

Post by Greg »

I had to modify my plc.src to achive that. Please be careful if you decide to mess with the plc or wait until someone smarter comes along to help like cncnw :D also If you define a custom output like me, the wizard will remove it if you make any future changes to inputs/outputs. This is what I did to add a enable relay to kick on everytime a tool change is called.

Code: Select all

;                   Output Definitions
;       Logic 1 = OUTPUT ON (Green), 0 = OUTPUT OFF (Red)
;------------------------------------------------------------------------------

; DO NOT MODIFY
; #wizardregion Outputs
OUTPUT1                IS OUT1
OUTPUT4                IS OUT4
OUTPUT6                IS OUT6
OUTPUT7                IS OUT7
OUTPUT8                IS OUT8
UnclampTool            IS OUT33
OUTPUT2                IS OUT34
OUTPUT3                IS OUT35
Mist                   IS OUT36
ATC_CarouselIn         IS OUT37
ATC_CarouselOut        IS OUT38
Flood                  IS OUT39
SpindleCooling_Fan     IS OUT40
SpinFWD                IS OUT41
SpinREV                IS OUT42
VFDResetOut_O          IS OUT43
NoFaultOut             IS OUT44
ATC_ENABLE             IS OUT46                        <--------This is my enable relay******
ATC_CarouselForward    IS OUT47
ATC_CarouselReverse    IS OUT48
; #endregion
Then I had to add this logic.

Code: Select all

                              Accessory Section
;------------------------------------------------------------------------------


IF ATC_CarouselForward THEN SET ATC_ENABLE 
IF ATC_CarouselReverse THEN SET ATC_ENABLE 
IF !ATC_CarouselReverse && !ATC_CarouselForward THEN RST ATC_ENABLE


cncsnw
Community Expert
Posts: 4535
Joined: Wed Mar 24, 2010 5:48 pm

Re: Denford Triac Carousel ATC

Post by cncsnw »

Regarding the direction control: the existing logic is apparently written to use separate outputs for "run forward" and "run reverse", instead of using a "run" and "direction" pair (as is an option for spindle control).

You will either need some intervening ice-cube relays, or -- as Greg just suggested -- you will need to change the PLC logic, to make it control your "run" and "direction" relays.

For example, you could make OUT36 "ATC_CarouselReverse" operate a 2-pole relay. One pole of that relay would close the existing carousel motor run relay, in parallel with OUT35 "ATC_CarouselForward". The other pole of that relay would close the existing carousel motor direction relay.


Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

cncsnw wrote: Fri Jun 21, 2024 11:25 am
Chaz wrote: Fri Jun 21, 2024 10:41 am On that topic, M62, 61 dont work / react either. Only outputs 5 upwards can be switched with their respective M codes.
You are still confusing physical outputs (such as OUT1, OUT3, and OUT35) with the token names for assigned functions (such as "OUTPUT1" or "OUTPUT3" or "ATC_CarouselForward").

A given output can have only one assigned function at a time. For example, you could make OUT35 (the third relay on the expansion board) be "OUTPUT3" if you wanted, and then it would respond to M63 and M83; or you could make it "ATC_CarouselForward", so that it responds to whatever built-in PLC logic controls that token. You cannot have it do both. At least, not using the Acorn Wizard.

In your 6/19/24 report, you have the following tokens assigned to the output relays:

Code: Select all

SpinFWD                IS OUT1
Flood                  IS OUT2
LubePump               IS OUT3
NoFaultOut             IS OUT4
OUTPUT5                IS OUT5
OUTPUT6                IS OUT6
OUTPUT7                IS OUT7
OUTPUT8                IS OUT8
ATC_CarouselIn         IS OUT33
ATC_CarouselOut        IS OUT34
ATC_CarouselForward    IS OUT35
ATC_CarouselReverse    IS OUT36
UnclampTool            IS OUT37
Since you have assigned "OUTPUT5" to the OUT5 relay on the Acorn board, you are able to use it with M65 and M85.

Since you do not have "OUTPUT3" assigned to any relay, M63 and M83 do nothing.
Thanks. I think its the Wizard which assigns the name and I was oddly just thinking why 3 was blank. I did use it as Lube pump till I discovered there's no Lube pump relay (it runs full time). That's why its blank.

Noted about OUTPUT and OUT but a lot of ground to cover to under for those of us that dont work on this often. Much appreciated.


Chaz
Posts: 694
Joined: Thu Feb 08, 2018 7:57 am
Acorn CNC Controller: No
Allin1DC CNC Controller: No
Oak CNC controller: No
CNC Control System Serial Number: none
DC3IOB: No
CNC11: No
CPU10 or CPU7: No

Re: Denford Triac Carousel ATC

Post by Chaz »

Greg wrote: Fri Jun 21, 2024 11:29 am I had to modify my plc.src to achive that. Please be careful if you decide to mess with the plc or wait until someone smarter comes along to help like cncnw :D also If you define a custom output like me, the wizard will remove it if you make any future changes to inputs/outputs. This is what I did to add a enable relay to kick on everytime a tool change is called.

Code: Select all

;                   Output Definitions
;       Logic 1 = OUTPUT ON (Green), 0 = OUTPUT OFF (Red)
;------------------------------------------------------------------------------

; DO NOT MODIFY
; #wizardregion Outputs
OUTPUT1                IS OUT1
OUTPUT4                IS OUT4
OUTPUT6                IS OUT6
OUTPUT7                IS OUT7
OUTPUT8                IS OUT8
UnclampTool            IS OUT33
OUTPUT2                IS OUT34
OUTPUT3                IS OUT35
Mist                   IS OUT36
ATC_CarouselIn         IS OUT37
ATC_CarouselOut        IS OUT38
Flood                  IS OUT39
SpindleCooling_Fan     IS OUT40
SpinFWD                IS OUT41
SpinREV                IS OUT42
VFDResetOut_O          IS OUT43
NoFaultOut             IS OUT44
ATC_ENABLE             IS OUT46                        <--------This is my enable relay******
ATC_CarouselForward    IS OUT47
ATC_CarouselReverse    IS OUT48
; #endregion
Then I had to add this logic.

Code: Select all

                              Accessory Section
;------------------------------------------------------------------------------


IF ATC_CarouselForward THEN SET ATC_ENABLE 
IF ATC_CarouselReverse THEN SET ATC_ENABLE 
IF !ATC_CarouselReverse && !ATC_CarouselForward THEN RST ATC_ENABLE
Thanks. Do you need to recompile anything or is this just inserted into the plc.src?


Post Reply