回到python的Optommp入门

Python软件包概述

使使用Python的Optommp更加简单,易于开始凹槽史诗般的开源Python包在Python软件包索引(PYPI)托管文件github

这意味着您可以轻松下载软件包,在Python脚本中使用一行导入该软件包,然后每个任务只是一个简单的函数调用,而复杂的十六进制阵列,插座和其他详细信息则为您处理。

这个想法是要直接运行,并直接进入开发史诗般的应用程序,而不是花费时间写作和调试通信方法。

顶部

下载

要下载包裹,您需要安装Python Pip,Python Package Manager(如果您还没有),然后使用它来获取Optommp来自Python软件包索引(PYPI)的软件包。
请按照以下步骤获取设备上的包裹:

  1. sudo apt-get更新

  2. sudo apt-get安装python pip

  3. sudo pip安装optommp

顶部

使用软件包

要使用软件包,请参阅github readme或以下步骤:

  1. 下载软件包后,将其在脚本的顶部导入:

    导入Optommp

  2. 为Localhost(无参数)创建Opto 22内存映射对象或提供设备的主机名:

    grvepic = optommp.o22mmp()

  3. 在此对象上调用函数,交出任何必需的参数;例如,在插槽中切换数字输出模块0,频道号4(1 = ON,0 = OFF):

    grvepic.setDigitalPointState(0,4,1)

  4. 在脚本末尾关闭控制器连接:

    grvepic.close()

还有更多示例脚本可用于查看使用中的软件包,或者您可以发表帖子Opto论坛有关更具体的问题。

顶部


包括功能

创建和关闭控制器对象

  • O22MMP(主机)- 初始化位于“主机” IP地址或主机名的Opto22内存映射对象。

  • O22MMP()- 初始化对象,默认为Localhost/127.0.0.1

  • 关闭()- 关闭插座连接到设备。在脚本结束之前调用此。

杂项。功能

  • readRawOffset(偏移,大小,data_type)- rads在原始地址抵消,收集尺寸字节,并使用数据类型格式打开包装(请参阅UncackReadResponse有关详细信息)。

  • lastror()- 返回控制器上存储的最后一个错误响应代码,请参阅OPTOMMP协议手册(表格1465)有关详细信息。

  • unitDescription()- 返回设备单元描述。例如,grv-epic-pr1

  • 固件版本()- 返回设备固件版本。例如,R1.3A

以太网状态访问功能

  • ipaddresse0()- 返回控制器上与以太网0关联的IP地址。

  • macAddresse0()- 返回控制器上与以太网0关联的MAC地址。

  • ipaddresse1()- 返回控制器上与以太网1关联的IP地址。

  • macAddresse1()- 返回控制器上与以太网1关联的MAC地址。

模拟和数字I/O访问功能

  • setDigitalPointState(模块,通道,状态)- 高清数字输出渠道模块将切换到状态,应为1或0。返回状态代码,其中代码0表示没有报告错误。

  • getDigitalPointState(模块,频道)- 高清数字输出的状态渠道模块将被取出。返回状态1或0。

  • getAnalogpointValue(模块,频道)- 返回安装在模拟I/O的当前浮点值渠道模块

  • setAnalogpointValue(模块,通道,值)- 设置安装的模拟I/O渠道模块成为价值价值应该是浮标。

  • getAnalogpointmin(模块,频道)- 返回安装在模拟I/O的最小浮点数渠道模块

  • getAnalogpointmax(模块,频道)- 返回安装在模拟I/O的最大浮点数渠道模块

ScratchPad区域访问功能

  • getCractchpadintegerarea(索引)- 返回指数Th刮擦整数。

  • setscractchpadintegerarea(索引,值)- 设置指数Th刮擦整数为价值

  • getCraccractchploatarea(索引)- 返回指数Th刮擦垫浮子。

  • setscractchploatarea(索引,值)- 设置指数Th刮擦垫浮子为价值

  • getCractchpadstringarea(索引)- 返回指数Th刮擦垫字符串。

  • setScractchpadstringarea(索引,数据)- 设置指数Th刮擦垫字符串为数据

内部内存映射功能

大多数用户将不需要或不需要直接在其代码中使用这些功能,而是用作上述功能的助手。但是,了解他们的工作可能会有所帮助,或者您打算修改或扩展此软件包。

  • unwackReadResponse(数据,data_type)- 从读取响应的16-20字节中解开字符串数据。返回格式化的数据。
    数据类型–> struct format characters ‘c’, ‘i’, ‘d’, ‘f’, etc., or specifically ‘FIRMWARE’, ‘IP’, or ‘MAC’ for custom formatting, or ‘NONE’ for raw binary data.

  • UncackWriterSponse(数据)- 从写入响应的4-8字节4-8解开整数状态代码。返回int状态,其中代码0表示没有报告错误。

  • packFloat(值)- 包装浮点vlaue进入一个四字节六边形阵列。

  • Packinteger(值)- 包装整数点vlaue进入一个四字节六边形阵列。

  • readblock(地址)- 在内存位置读取值地址。依靠buidreadBlockrequest(),结束。发送().recv()方法。返回未包装的字符串数据。

  • 写入(地址,值)- 写价值进入内存位置地址。依靠buildWriteBlockRockrequest(),结束。发送().recv()方法。返回int状态。

  • BuildReadBlockRockrequest(dest,size)- 构建读取块请求Bytearray。返回Bytearray块。
    这是一种内部使用的实用程序方法,可以构建读取请求。客户代码不太可能需要它。

  • BuildWriteBlockRockrequest(dest,value)- 构建写块请求Bytearray。返回Bytearray块。
    这是一种内部使用的实用程序方法,可以构建读取请求。客户代码不太可能需要它。

顶部


要了解用于编写此软件包的方法,请查看此处的较早页面python的Optommp入门指导。

参考