C#实战035:Fanuc无法检索到NC程式问题解决

sw

前言

这次主要要实现的功能是在线管理NC程式管理,希望通过远程对Fanuc设备中的nc程式进行增删改查管理,在测试的过程中发现个问题在这里记录下:设备内存中有nc程序却检索不到,无法删除。

上传nc程式

首先我通过程式往机台上传一个程序,这里用到的函数是cnc_dwnstart4、cnc_download4、cnc_dwn4,然后在cnc_dwnstart4中指定了上传目录为"//CNC_MEM/USER/PATH1/",然后在设备的PATH1目录中我们就可以看到O4205程式了。

//示例源文件:%%//解析后内容为字符串\nO4205\n//文件名不要跟后缀,否则无法检索到N0010G40G17G90G70\\nN0030T06M06\n%
获取目录中的程式

在机台上我发现程式目录有多个,说明用户平时可能会在其他文件目录中存放程式,即然时管理程式那么自然要考虑全面了,所以在获取程式的时候我们对其他目录也进行了检索(该程序每次只支持获取10条程式,要读完只能循环遍历了)。在拿到对应的程式后发现,只有PATH1中的程式,其他目录中的程式一个都没有。

///summary///读取程序目录////summary///paramname="model"实体/param///paramname="type"设置读取类型0:"程序编号"only1:"Programnumber"and"Comment备注信息"2:"Programnumber","Comment"and"Programsize"/param///paramname="top_prog"开始读取程序号/param///paramname="num_prog"要读的程序数量/param///returns/(shorttype,shorttop_prog,shortnum_prog){=();h1=(ushort)_rdprogdir2(h1,type,reftop_prog,refnum_prog,buf);if(h1==_OK){returnbuf;}returnnull;}
删除指定程式

然后我又尝试往PATH2里面上传一个程式(PATH1的删除),设备中可以看到程式说明上传是没问题的,紧接着我们来测试删除该程式,可是通过远程来删除的时候却删除失败(显示EW_DATA(5)错误)。同样的操作在PATH1中却能实现,这就让我郁闷了。

///summary///删除指定程序////summary///paramname="ip"fanucip/param///paramname="timeOut"延时/param///paramname="number"设置程序号/param///returnsretern1成功/returnspublicboolDel(){shortfl=_delete(h1,number);if(fl==_OK){returntrue;}returnfalse;}
发现问题

通过多次的尝试发现,只有PATH1中的程式可以正常的实现增删改查操作(其他目录只能上传,无法远程检索和删除),这里主要问题在前台目录设置,因为设备中设置了前台目录为"//CNC_MEM/USER/PATH1/",所以我们在只能检索和操作到PATH1目录中的nc程式。因此我们如何想远程管理USER目录下的所有程式,我们就要将前台目录进行修改成"//CNC_MEM/USER“,这样只要是USER目录下的内容都能被远程获取和操作了。

修改“前台目录”

文章版权声明:除非注明,否则均为机床资讯库原创文章,转载或复制请以超链接形式并注明出处。

上一个 自组公路车,车店师傅不会告诉你的十大注意和技巧(上)

下一个 中企承建科特迪瓦可可加工厂正式交付