开放空间列车环境

openspacetrainenv的Python项目详细描述


开放空间

列车环境

这是开放空间项目列车环境的存储库。这个项目是用Python3.6编写的,将在列车上的计算机上运行。

项目遵循PEP008 style guide,每个合作者都应该确保他的代码符合标准。

测试在这个项目中非常重要,应该为每个功能单元编写。项目使用unittest库进行单元测试,使用nose库进行测试发现。

文档是团队工作的关键,因此请确保您的代码有良好的文档记录,并且遵循pep008样式的规则。

alt text

摄像头处理器

camera处理程序使用pubsub模式让订阅者知道何时发布帧。这些帧将在每个订户请求的编解码器中进行转换。这些帧被发送到代理,以便在组件之间重新分配。

视觉容器

vision容器将在列车环境中包装cv-ml服务。这将通过将它们的python脚本导入到我们的服务中并将我们的代理公开为一个单例来完成。这样,vision容器可以通过代理发布消息和订阅消息。init脚本应该包含其容器的设置逻辑,因为我们的服务不会从其服务中调用任何方法(除了注册的回调)。

经纪人

代理(以前称为传输通信器)负责使用代理模式对消息进行内部路由。 暴露方法:

  • broker.get_instance()
  • self.subscribe('消息',回调)
  • self.publish('message',*args,**kwargs)

选举成分

选举部门负责不同车厢之间的选举程序,并在选举获胜时启动(实际)TUDA。

虚拟化tuda模块

每辆马车上都有虚拟的图达。此组件必须通过http连接将连接传输到tuda。

列车单元数据聚合器

列车单元数据聚合器是当前车厢序列中的中心点。这个组件必须缓冲接收到的信息,并且需要与内部api和传输模块通信。

主TUDA模块

此模块必须确保数据有时间戳并路由到其他传输模块(内部api&transfer模块)。

内部API模块

该模块必须缓冲/存储数据并响应来自列车内部网络的api调用。

传输模块

此模块负责连接到地面(后端)。此模块必须将数据传输到列车上已经存在的AMQP模块(不是我们服务的一部分)。

测试模拟

为了模拟amqp通信和内部api,我们需要创建这些组件的简单模拟。

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

推荐PyPI第三方库


热门话题
java如何通过不精确的参数类型获取构造函数?   找到java文件,但扫描程序未读取   在本地java服务器中部署google translation api,而不调用web服务。   java无法分析Adb版本(错误的ELF类)   java从模型到Servlet再到JSP选项列表获取信息   如何解决将xml文件转换为java文件时出现的错误?   Linux上从Java访问PC硬件端口   java如何覆盖Spring启动库属性?   java在maven的REST服务下获取JDBC连接   java如何将数组对象传递给构造函数?   java Spring BeanFactory作为Swing应用程序中的单例   带JsonDeserializer的java Lombok   用于多个文件的java Groovy脚本xml解析器   java如何从restful web服务中获取一些数据,并将其保存到数据库中?   servlet在java中提取ZIP   在Java中使用超类处理异常   java使hibernate在不使用@OneToOne@OneToMany等的情况下生成外键约束   基于tomcat web应用程序的用户角色的java只读访问   java在一个3乘n的表中找到具有最佳方差的3个值的集合   java Apache Commons CLI:获取选项的字符串值数组