问题描述
我正在尝试连接到 fanuc CNC 机器,我得到了 fwlib32 focas dll 并且它可以在 Windows 上运行。我想在 linux 上运行 focas,我想在 linux 平台上运行相同的库。 (参考Connect PLC to Python via Fanuc/Focas)
解决方法
一旦你让它在 windows 上工作,按照步骤让它在 linux 上工作。
从下载的 focas dll cd 提取文件夹(或在线存储库 ex:https://github.com/strangesast/fwlib
请验证许可相关的东西),
复制 fwlib32.h 文件和 arm (for raspberrypi) 版本的 libfw32lib.so.1.0.*
,复制文件 /home/pi
sudo cp ~/libfwlib32.so.1.0.x /usr/local/lib/libfwlib32.so.1.0.0
sudo ldconfig
sudo ln -s /usr/local/lib/libfwlib32.so.1.0.0 /usr/local/lib/libfwlib32.so
现在查找 fwlib32.cs 的行查找文本的所有实例
"fwlib32.dll"
并替换为
"libfwlib32.so"
在 fwlib32.cs 中,添加这些行
[DllImport("libfwlib32.so",EntryPoint = "cnc_startupprocess")]
public static extern void cnc_startupprocess(long level,string filename);
和
[DllImport("libfwlib32.so",EntryPoint = "cnc_exitprocess")]
public static extern void cnc_exitprocess();
在调用任何其他 fwlib32.cs 库函数之前调用此函数
long level = 3; string filename = "focas.log"; Focas1.cnc_startupprocess(level,filename);
调用之后,你可以使用下面的行连接,接下来你可以调用任何库函数
short statusCode = Focas1.cnc_allclibhndl3(host,(ushort)port,timeout,out pHdl);