python 调试IGH库

 如何通过python来调试IGH的库呢?

可以使用如下的代码,测试请求主站,把主站变成激活状态。其他的函数也可以类似的一步一步调用。

结果如下:

from ctypes import *
igh=CDLL("/home/cheni/lichuan_bujin/libethercat.so")
igh.ecrt_request_master(0)

python 调试IGH库_第1张图片

 第一步:找到igh安装库的文件夹

我的安装后实在这个文件中,

python 调试IGH库_第2张图片

找不到安装目录后,可以在安装包文件中再运行一下安装指令 make modules_install install,在里面翻一下,他会提示安装到哪个目录里面的。

不要复制那边那个带箭头的,那个是链接文件,libethercat.so.1.1.0才是实际文件。复制到自己的工程文件中,我的是lichuan_bujin,把后面的。1.1.0删除了,通过重命名,太长了,不好看。留这一样能用,就是文件名自己改就行。

第二步:先用命令行查看一下master的状态

 运行前看下,一般这个阶段是Idle,这个master0

python 调试IGH库_第3张图片

 

第三步:通过python3命令行一步一步试一下

这个要切换到管理员权限,不然请求主站的时候会提示权限不够

python 调试IGH库_第4张图片

 第四步:运行python程序,改变状态

这个也是要管理员的权限的

#igh_caozuo.py的内容
from ctypes import *
import time
igh=CDLL("/home/cheni/lichuan_bujin/libethercat.so")
igh.ecrt_request_master(0)
time.sleep(35)

注意这个暂停时间,如果不暂停,程序结束,就看不到状态机改变了。 

 python 调试IGH库_第5张图片

 第五步:查看状态机的阶段

 请求完状态机后可以通过命令行查看一下主张的状态已经改变

python 调试IGH库_第6张图片

 这个跟他那个IGH手册上讲的是一致的。

python 调试IGH库_第7张图片

python 调试IGH库_第8张图片 

 

 

你可能感兴趣的:(ethercat,开源主站IGH使用,linuxcnc)