在上周五(2022/3/18)在公众号推出了“ 竞赛中车模使用WiFi模块说明 ”推文之后,组委会陆续收到参赛同学、老师以及竞赛合作厂商的反馈。主要认为,扩充的规则对于参赛队伍虽然增加了解决问题的空间,但也引起更多焦虑,相应的技术培训和验证显得不足。竞赛秘书处在充分了解参赛队伍反馈意见,并与相关组别赞助厂商技术人员讨论之后,决定在本届比赛中,不再对“平衡信标组”、“智能视觉组”规则进行扩充,维持原来方案不变。

利用RT-Thread进行联网,实现车路协同、云边端计算等内容安排在“RT-Thread创新挑战赛”要求中,并结合总决赛现场的工程挑战赛另行发布相关要求,为力所能及的队伍搭建创新展示平台。

简 介: 本文给出了在智能视觉组和平衡信标组允许使用WiFi通讯模块辅助车模运行的比赛规则补充说明,目的是在车路协同、“边云计算”等方面让参赛队伍有更广阔的的探索空间,引导同学们对于国产嵌入式操作系统 RT-Thread 的熟悉并建立起应用经验,为构建复杂无人系统打下基础。本文内容属于建议稿件,正式文档将会在竞赛网站进行公布。

关键词 智能车竞赛智能视觉平衡信标RT Thread

新规则简述
目 录
Contents
新增规则目的
防止通讯作弊
网络服务IP和端口
智能视觉组
赛场布局与比赛流程
通讯数据格式
通讯模块接口
平衡信标组
赛场布局与比赛流程
数据格式
总 结

 

§01 规则简述


1.1 新增规则目的

  本文主要阐述在第十七届全国大学生智能汽车竞赛中,针对智能视觉与平衡信标组中加入一些基于RT-Thread RTOS操作系统的组件应用与与WiFi通讯模块,一方面以增加允许同学们探索更多的手段、便捷的完成既定任务;另外一方面也将车路协同、“边云协作”等理念融入到智能车竞赛中;鼓励参赛同学对于国产嵌入式操作系统 RT-Thread RTOS 技术原理与应用实践做进一步的探究。

  本着“不影响原有规则细节、不影响原本竞赛形式、允许探索新的方案”的原则,在原有规则基础上进行补充。其中主要包含两方面:

  • 针对智能视觉组,允许增加联网手段;方便获取赛场目标信息和上传关键信息。
  • 针对平衡信标组,允许增加全局摄像头与联网手段,参赛队伍可以借助于场外计算机视觉辅助完成车模与信号灯定位,协助车模优化行进路线。参赛队伍可以继续使用原有方案完成比赛任务,也可以使用全局摄像头联网完成找灯,以便更高效精准的完成既定任务。

1.2 防止通讯作弊

  由于增加了无线通讯,为了防止比赛过程中:

  • 参赛队伍受到别人恶意干扰作弊,将会在比赛现场设置比赛专用WiFi热点,仅供比赛车模通讯模块使用;
  • 对于车模接收无线模块,规定必须使用竞赛组委会提供的基于ESP8266通讯模块,用于对发送信息进行过滤,仅允许传送规定格式的信息内容。

  在后面规则中,现场的WiFi热点和ESP8266模组将由竞赛组办方提供,ESP8266模块接口以及通讯协议将会统一进行公布。

1.3 网络服务IP和端口

  在比赛中,比赛现场WiFi局域网内会包含有:

  • 智能视觉组中的比赛系统网络服务器,一方面为车模提供场内目标所在位置坐标,另一方面接收车模发送的目标识别和位置信息;
  • 平衡信标组全局摄像头服务器,为运行车模提供车模与信标的位置信息。这个服务器是由参赛队伍自行搭建,完成对全局摄像头图片处理和发送相应位置数据。

1.3.1 WiFi局域网

  比赛车模通过专用ESP8266通讯模块接入现场WiFi局域网,局域网络的识别名称与密码会在比赛现场提供给参赛队伍;

1.3.2 服务器IP地址和端口

  智能视觉组服务器是由组委会提供,它对应的IP地址和端口号为:

智能视觉组服务器:
IP地址:192.168.0.222
端口号:2022

  平衡信标组的服务器是由参赛队伍自行在笔记本上编写,原则上可以自行设置服务器对应的IP地址和端口号,建议使用以下统一的IP地址和端口号:

平衡信标组服务器:
IP地址:192.168.0.111
端口号:1011

 

§02 能视觉组


  面给出了针对智能视觉组的实施方案与规则补充。

2.1 赛场布局与比赛流程

2.1.1 智能视觉组赛场

  新增加WiFi局域网联网通信数据,基于RT-Thread的联网组件框架下,赛场结构如下图所示:

▲ 图2.1.1 比赛现场组成部分示意图

▲ 图2.1.1 比赛现场组成部分示意图

  在上图中,车模是由参赛队伍自行制作,其它部分都是由竞赛组委会现场提供。

  根据 第十七届智能车竞赛智能视觉组比赛细则 ,参赛车模作品需要留有无线模块接口。根据现在扩充的方案,在原有的单向发送接口(接口具有VCC,GND, TX三个端口)的基础上,另外增加一个数据接收(RX)端口,形成全双工无线通信端口。车模可以通过该端口进行发送和接收信息。

  通讯模块是基于ESP8266制作,在比赛时由竞赛组委会统一进行现场提供。

2.1.2 比赛与通讯流程

  根据已公布的智能视觉组规则,参赛车模可以在比赛前通过机器视觉的方式获得场地内目标物位置信息。也可以借助于通讯模块直接接收到场内目标物位置信息。

  按照新的基于局域网的通信方式,

  如果按照新的基于局域网的通信方式,按下开始按键后,车模软件借助于RT-Thread RTOS提供联网功能,利用通讯硬件模块与裁判上位机建立起TCP连接,然后上位机将会从局域网将数据下发至车模,车模通过解析裁判系统下发的目标坐标信息,即可直接获取到赛场上所有目标的准确坐标。具体数据标准参见下面“通讯数据格式”。

  在车模运行过程中,车模可以通过局域网直接上传自身的坐标与识别信息,就不需要再使用原规则指定的发送接口,按照指定的数据格式上传自身坐标以及识别的目标信息即可。


▲ 图2.1.2 比赛流程示意图

▲ 图2.1.2 比赛流程示意图

  比赛时提供组委会提供专用的ESP8266模块用作局域网接入。

▲ 图2.1.4 参赛车模接收与发送信息示意图

▲ 图2.1.4 参赛车模接收与发送信息示意图

2.2 通讯数据格式

2.2.1 数据格式

  如果参赛车模仍然采用已经公布的视觉组比赛标准,可以只利用通讯模块按照之前公布数据标准发送车模识别目标信息和运行为止信息。如果计划通过模块直接接受场地信息以及发送位置信息,可以

  关于通信的数据格式使用IOT常用标准数据格式(JSON格式)进行上传与下发。

(1)车模接收目标位置信息

  裁判系统发送给车模的目标信息如下面代码所示。

  目标坐标信息一帧数据包含两个部分:

  • 第一个部分包含标“Origin”,跟随的数据为“Server”代表数据来源于裁判系统;
  • 第二个部分为一个数据组,包含标签“Coordinate”代表目标坐标信息,坐标信息的数据取决于场地的目标数量。
{
    "Origin":   "Server",
    "Coordinate":   [{
            "x":    1,
            "y":    3
        }, {
            "x":    2,
            "y":    5
        }, {
            "x":    6,
            "y":    7
        }]
}
(2)车模发送位置与目标识别信息
 Ⅰ.车模位置信息

  车模发送给裁判系统的识别信息,自身坐标信息一帧数据包含两个部分:

  • 第一个部分包含标“Origin”,跟随的数据为“Car”代表数据来源于车模;
  • 第二个部分为一个数据组,包含标签“Coordinate”代表自身坐标信息。
{
    "Origin":   "Car",
    "Coordinate":   [{
            "x":    0,
            "y":    0
        }]
}

  为了避免参赛车模利用通讯模块下行数据(从服务器发送到车模数据)发送额外控制命令和其它产扫信息,组委会提供的通讯模块会对通讯数据进行分析。如果出现异常则会进行拦截。

  坐标数据内容包括“x”标识二维横轴坐标对应赛场7米边,“y”标识二维纵轴坐标对应赛场5米边,横轴坐标值范围为[0-35],纵轴坐标值范围为[0-25]。如果数据超过限定值范围,数据视为异常数据,会被赛场发放的ESP8266模块截断。

 Ⅱ.目标识别信息

  目标识别信息一帧数据包含三个部分:

  • 第一个部分包含标“Origin”,跟随的数据为“Car”代表数据来源于车模;
  • 第二个部分包含标“Class”,跟随的数据为“Animal”代表大类别;
  • 第三个部分包含标“Subclass”,跟随的数据为“Cat”代表小类别。
{
    "Origin":   "Car",
    "Class": "Animal",
    "Subclass": "Cat"
}
  • 目标大类别数据范围为:[Animal、Fruits、Vehicle],对应[动物、水果、交通工具];

  • 目标小类别数据范围为:

    • [Dog、Horse、Cat、Cattle、Pig] ,对应[狗、马、猫、牛、猪]
    • [Orange、 Apple, 、Durian、 Grape、 Banana] ,对应[橙子、苹果、榴莲、葡萄、香蕉]
    • [Train、 Steamship、 Plane、Car、Coach] ,对应[火车、轮船、飞机、小轿车、大客车]

2.3 通讯模块接口

  兼容已有的规则,可以通过已经规定的接口连接官方发放的无线模块,按照已有的数据格式上传数据。详细参见: 智能视觉组-识别结果发送

2.3.1 通讯接口定义

  为了与原有规则接口兼容,新扩充的竞赛通讯模块增加了一个下行数据线。准备使用RT-Thread参赛队伍,可以利用该接口与竞赛官方提供的ESP8266模块进行通讯,并对JSON格式的数据进行收发。

▲ 图2.3.1 新改动的数据接口

▲ 图2.3.1 新改动的数据接口

  通讯接口的物理定义由原来的3芯接头改为4芯。

2.3.2 通讯信息

  如果使用RT-Thread局域网接入方式获取目标坐标信息,那么在完成与裁判系统上位机的TCP连接后,上位机会通过局域网下发指定格式的准确的目标坐标信息。

  如果不使用局域网获取目标坐标信息,依旧可以使用原有规则下使用摄像头识别A4纸上的图像来获取目标坐标信息。

 

§03 衡信标组


  面给出针对平衡信标组的实施方案与规则补充

3.1 赛场布局与比赛流程

  比赛场地布局不影响采用传统信标比赛技术方案的车模完成比赛。新规则只是增加了赛场专用WiFi热点,并允许参赛队伍自行在场地外假设全局摄像头用于检测场内车模与信标的位置。

3.1.1 信标组赛场组成

  参赛队伍可以在场地边缘增加一个摄像头,识别车模与信标灯的方位,通过赛场旁边的WiFi无线局域网发送给运行的车模,帮助车模完成信标灭灯过程。

▲ 图3.1 信标灯比赛现场组成部分示意图

▲ 图3.1 信标灯比赛现场组成部分示意图

  赛场外的全局摄像头、安装支架以及处理摄像头图片的笔记本电脑由参赛队伍自行准备,并在比赛过程中进行搭建、调试和连通。

  比赛所使用的ESP8266模块将由竞赛组委会统一提供,该模块对于传输数据(JSON格式)进行过滤,只允许传送符合要求的位置信息。

3.1.2 比赛与通讯流程

(1)建立视觉服务器

  比赛中,参赛队伍自己的笔记本连入赛场专用热点,并提供TCP通讯服务。具体通讯协议见下面给出的“数据通讯协议”。

  全局相机服务器可以由参赛队伍通过编程自行实现,也可以通过规定的接口连接赛场发放的ESP8266模块,按照正常使用即可。数据格式按照指定的JSON格式发送。需要将模块设置为TCP Server,可以使用RT-Thread的ESP8266驱动组件搭配SAL套接字抽象层比较方便的实现。

(2)车模连通服务器

  比赛现场提供专用ESP8266模块,用于车模接入现场WiFi并进行数据接收。

  车模部分使用赛场发放的ESP8266模块,按照正常使用即可。使用ESP8266与全局摄像头的TCP Server建立TCP连接,这样就可以与全局摄像头部分进行数据通信,全局摄像头部分下发数据,车模获取并解析数据即可

▲ 图3.1.2 比赛流程示意图

▲ 图3.1.2 比赛流程示意图

3.2 数据格式

  关于通信的数据格式使用IOT常用标准数据格式(JSON格式)进行下发:

{
    "Origin":   "Camera",
    "Light":   [{
            "x":    31,
            "y":    47
        }],
    "Car":   [{
            "x":    23,
            "y":    29
        }]
}

  如上面代码所示,下发一帧数据包含三个部分:

  • 第一个部分包含标“Origin”,跟随的数据为“Camera”代表数据来源于全局摄像头;
  • 第二个部分为一个数据组,包含标签“Light”代表信标灯坐标信息;
  • 第三个部分为一个数据组,包含标签“Car”代表车模坐标信息。

  坐标数据内容包括“x”标识二维横轴坐标对应赛场7米边,“y”标识二维纵轴坐标对应赛场5米边,横轴坐标值范围为[0-140],纵轴坐标值范围为[0-100],对应最高坐标精度为5cm。如果数据超过限定值范围,数据视为异常数据,会被赛场发放的ESP8266模块截断。

 

  结 ※


  文给出了在智能视觉组和平衡信标组允许使用WiFi通讯模块辅助车模运行的比赛规则补充说明,目的是在车路协同、“边云计算”等方面让参赛队伍有更广阔的的探索空间,引导同学们对于国产嵌入式操作系统 RT-Thread 的熟悉并建立起应用经验,为构建复杂无人系统打下基础。

  本文内容属于建议稿件,正式文档将会在竞赛网站进行公布。

  • 全国大学生智能车竞赛网站:<smartcar.cdstm.cn>


■ 相关文献链接:

● 相关图表链接:

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐