欧姆龙PLC 程序错误0x80f0

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了欧姆龙PLC 程序错误0x80f0相关的知识,希望对你有一定的参考价值。

1)通讯中断,或者下载中断,下载错误
2)内存溢出,内存卡损坏
3)其它硬件错误
先清空内存,下载小段代码,看看是否能够执行,如果不能,检测硬件,更换内存卡
如果能执行,则可能是你的程序太大引起内存超限。更换大容量的内存卡吧
参考技术A 程序不完整
有中断或者是任务没有添加进程序里
引起下载错误本回答被提问者采纳

使用C#实现欧姆龙PLC FINS协议读取

由于采用欧姆龙的PLC进行设计和开发,所以需要与它进行协议通讯。

之前也有同事写过这样的协议,但是使用起来不是很方便,因此重新写了一份FINS协议,在开发的过程中,也碰到一些问题,比如C#结构体对齐问题,导致发送数据不对,后来仔细检查才解决了这个问题。

又由于对欧姆龙的PLC区域不是很了解,一直不了解读写位和读写字的区别,后来经过反复验证,才发现读写位与字的区别是在于区域码会不一样,也就是说,即使是同一个区,也是分为两个区码,比如W区,按位读写就是0x31, 按字读写就是0xB1,其它发送的字节是一样,仅这里的区别。

另外PLC里的字都是网络顺序,因此要记得转换为小端格式,才能准确地读取值。

同时,在这里也使用了动态地构造数据包的方式,与固定填写有点区别,这个可以参考之前使用BufferStream的文章。

在位与字的区分,就写了下面的代码:

 private byte GetAreaTypeFlag(OmronAddressType omronAddressType, bool isBitProcess)
        
            if (isBitProcess)
            
                //位处理
                switch (omronAddressType)
                
                    case OmronAddressType.CIO:
                        return 0x30;
                    case OmronAddressType.WR:
                   

以上是关于欧姆龙PLC 程序错误0x80f0的主要内容,如果未能解决你的问题,请参考以下文章

欧姆龙plc程序里面为啥添加功能块

欧姆龙plc的第一次循环任务是啥意思?跟第一次循环标志的区别在哪里

欧姆龙plc如何查看有没有写通讯程序

如何用电脑仿真出MCGS与欧姆龙PLC通讯啊???

显示0.000该怎么编程

西门子PLC怎么和欧姆龙PLC通信?