- Posts: 114
- Thank you received: 0
EtherCAT driver for a 6 axis robot
4 years 3 months ago #247830
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
I believe I may need to look at "immediate homing" for the Meca500 if the robot provides its own homing mechanisms. Thoughts?
Code:
SEARCH_VEL = 0
LATCH_VEL = 0
USE_INDEX = NO
HOME_SEQUENCE = 0
#homing
net a1-home-index <= joint.0.index-enable => lcec.0.Meca500.status.homed
net a2-home-index <= joint.1.index-enable => lcec.0.Meca500.status.homed
net a3-home-index <= joint.2.index-enable => lcec.0.Meca500.status.homed
net a4-home-index <= joint.3.index-enable => lcec.0.Meca500.status.homed
net a5-home-index <= joint.4.index-enable => lcec.0.Meca500.status.homed
net a6-home-index <= joint.5.index-enable => lcec.0.Meca500.status.homed
Please Log in to join the conversation.
4 years 3 months ago #247837
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
db1981
Are you suggesting a comp "glue" layer similar to
github.com/dbraun1981/hal-cia402/blob/main/cia402.comp
github.com/dbraun1981/hal-cia402/blob/main/cia402.comp
Please Log in to join the conversation.
4 years 3 months ago #247849
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
Current output of halshow
github.com/djsftree/linuxcnc-ethercat/bl...-meca500/halshow.txt
github.com/djsftree/linuxcnc-ethercat/bl...-meca500/halshow.txt
Please Log in to join the conversation.
4 years 3 months ago #247867
by db1981
Replied by db1981 on topic EtherCAT driver for a 6 axis robot
yes, similar to this but only for the robots complete control pins and the axis enables...
Please Log in to join the conversation.
4 years 3 months ago #247922
by db1981
Replied by db1981 on topic EtherCAT driver for a 6 axis robot
oh, i have not noticed a few of the last posts.
-initial values would be set with the inital data at variable initialization in c.
I don't know if this is practicable in the whole system but my way of implementation would be:
safty chain (estop btn, power_on btn implemented in Hardware)
estop case : ctrl.deactivate = 1; motion.set-point 0
safty chain on (estop disabled) :
-ctrl.deactivate = 0;ctrl.activate = 1
-wait for status.activated -> set ctrl.home
-wait for status.homed -> reset ctrl.home, at this moment in time first set emc-enable-in true (the power on btn in gui will gets accesable)
-now set this
setp lcec.0.Meca500.vel-command 21
setp lcec.0.Meca500.motion.set-point 1
setp lcec.0.Meca500.motion.move-id 0
for lcnc homing use absolute encoders...
-initial values would be set with the inital data at variable initialization in c.
I don't know if this is practicable in the whole system but my way of implementation would be:
safty chain (estop btn, power_on btn implemented in Hardware)
estop case : ctrl.deactivate = 1; motion.set-point 0
safty chain on (estop disabled) :
-ctrl.deactivate = 0;ctrl.activate = 1
-wait for status.activated -> set ctrl.home
-wait for status.homed -> reset ctrl.home, at this moment in time first set emc-enable-in true (the power on btn in gui will gets accesable)
-now set this
setp lcec.0.Meca500.vel-command 21
setp lcec.0.Meca500.motion.set-point 1
setp lcec.0.Meca500.motion.move-id 0
for lcnc homing use absolute encoders...
Please Log in to join the conversation.
4 years 3 months ago #247928
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
Please Log in to join the conversation.
4 years 3 months ago #247929
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
This is where my experience and knowlege of the workings of lcnc falls off a cliff. If you're available for contract work let me know. The resulting work would be open source.I don't know if this is practicable in the whole system but my way of implementation would be:
Please Log in to join the conversation.
4 years 3 months ago #247931
by ftree
Replied by ftree on topic EtherCAT driver for a 6 axis robot
Would you also check for the robot existence on the EtherCAT bus as part of the safety chain?
lcec.0.Meca500.slave-online
lcec.0.Meca500.slave-oper
lcec.0.Meca500.slave-state-op
lcec.0.Meca500.slave-state-preop
lcec.0.Meca500.slave-state-safeop
lcec.0.Meca500.slave-online
lcec.0.Meca500.slave-oper
lcec.0.Meca500.slave-state-op
lcec.0.Meca500.slave-state-preop
lcec.0.Meca500.slave-state-safeop
Please Log in to join the conversation.
4 years 3 months ago #247938
by db1981
Replied by db1981 on topic EtherCAT driver for a 6 axis robot
yes, checking the whole ec-bus is an good thing.
this is a part from out standart safty/error handling comp, this comp works together with the safty-plc in the cabinet.
this is a part from out standart safty/error handling comp, this comp works together with the safty-plc in the cabinet.
Code:
ec_slaves_responding_ok = (ec_slaves_responding == ec_slaves);
if (!ec_slaves_responding_ok) {
emc_enable_out = 0;
if (data.last_ec_slaves_responding_ok) {
rtapi_print_msg(RTAPI_MSG_ERR, "EtherCAT: Not all %d slaves responding!\n", ec_slaves);
}}
data.last_ec_slaves_responding_ok = ec_slaves_responding_ok;
if (!ec_link_up) {
emc_enable_out = 0;
if (data.last_ec_link_up) {
rtapi_print_msg(RTAPI_MSG_ERR, "EtherCAT: Link down!\n");
}}
data.last_ec_link_up = ec_link_up;
if (!ec_all_op) {
emc_enable_out = 0;
if (data.last_ec_all_op)
{rtapi_print_msg(RTAPI_MSG_ERR, "EtherCAT: Not all slaves in OP mode!\n");
}}
data.last_ec_all_op = ec_all_op;
Please Log in to join the conversation.
4 years 3 months ago #247940
by db1981
with whole system, i am thinking about the safty regulations, hardware design of the complete machine.
this is my daily business, which country you are living?
Replied by db1981 on topic EtherCAT driver for a 6 axis robot
Code:
[quote]I don't know if this is practicable in the whole system but my way of implementation would be:[/quote]
This is where my experience and knowlege of the workings of lcnc falls off a cliff. If you're available for contract work let me know. The resulting work would be open source.
with whole system, i am thinking about the safty regulations, hardware design of the complete machine.
If you're available for contract work let me know
this is my daily business, which country you are living?
Please Log in to join the conversation.
Time to create page: 0.068 seconds
