将mosaik模拟数据发送到zeromq套接字。

mosaik-zmq的Python项目详细描述


莫斯科ZMQ

这个适配器是用来将mosaik模拟数据发送到数据流管理系统Odysseus。 奥德修斯允许在模拟过程中在线处理和可视化模拟结果。 更多信息可以在mosaik documentation中找到。

但是由于使用了ZeroMQ,这是一个高性能的异步消息传递库, mosaik zmq适配器还可用于在任何支持zeromq套接字的软件中处理或存储模拟结果。

安装

mosaik zmq可以使用pip安装:

$ pip install mosaik-zmq

mosaik zmq使用pyzmq模块如果在安装过程中出现错误, 安装python 3头和python zmq包(例如sudo apt-get install python3-devpython-zmq

如果安装仍然不起作用,则可能需要安装C编译器(例如sudo apt-get install build-essential

使用量

mosaik zmq适配器可以像任何其他组件一样添加到模拟场景中。 首先,您必须将以下代码添加到sim_config

sim_config={'ZMQ':{'cmd':'mosaik-zmq %(addr)s',},}

初始化

当您启动mosaik zmq时,必须提供step大小duration 争论。step_size定义发送数据的频率。这个 duration是模拟结束时间(秒)

示例:

zmqModel=world.start('ZMQ',step_size=15*60,duration=15*60*24*30)

模型实例化

mosaik zmq的每个实例都允许您创建 socket模型。Socket具有以下参数:

  • host(默认值:'tcp://*:')是数据将发送到的主机的地址。
  • port(默认值:5558)是主机接收数据的端口
  • socket_type(默认值:“PUB”)是要为适配器和主机之间的连接打开的ZeroMQ套接字的类型可以使用两种不同的模式。默认值是'pub',代表publish subscribe pattern。或者可以使用push pull pattern('push')。

示例代码:

zmq=zmqModel.Socket(host='tcp://*:',port=5558,socket_type='PUB')

连接

要将数据发送到主机,zmq模型必须连接到场景定义中的其他模型。 基于mosaik-demo,场景可能如下:

pvsim=world.start('CSV',sim_start=START,datafile=PV_DATA)pvs=pvsim.PV.create(20)zmqModel=world.start('ZMQ',step_size=15*60,duration=15*60*24*30)zmq=zmqModel.Socket(host='tcp://*:',port=5558,socket_type='PUB')connect_many_to_one(world,pvs,zmq,'P')

获得帮助

如果您需要帮助,请访问mosaik-users mailing list

变更日志

0.1.1–2016年1月20日

  • 更新的文档

0.1–2015年12月16日

  • 初始版本

作者

Mosaik ZeroMQ连接器是由Jan Sóren Schwarz创建的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在jetty请求日志中添加milliscond字段?   java在使用Scanner类从文件读取信息时遇到问题   为什么。类不适用于泛型类型?   SQLite插入上的java空指针异常   java能告诉我们Guava缓存是在禁用统计数据的情况下构建的吗?   java在应用程序中使用常量   java无法使用AutoIT和Selenium Webdriver在所需位置/文件夹保存图像   java如何在jtable中更新jprogress栏   java是比较给定日期和当前日期(在给定时区中没有时间段)的最佳方法   安卓代码中的java错误   java无法访问实体类中的字段   java如何在tomcat中处理三个JDBC连接池?   java无法使用Spring Security保护AngularJS页面   如何在没有TCP/IP协议栈的情况下用Java发送以太帧