目录

全国职业院校技能大赛嵌入式系统应用开发赛项

竞赛模块: 模块一

竞赛注意事项

第一模块 嵌入式系统硬件制作与驱动开发 竞赛任务书(第2套)

一、总体要求

二、竞赛任务表

竞赛模块: 模块二

竞赛注意事项

第二模块 嵌入式系统应用程序开发 竞赛任务书(第2套)

一、总体要求

二、竞赛任务表

三、标志物摆放位置表

四、竞赛平台位置示意图

竞赛模块: 模块三

竞赛注意事项

第三模块 嵌入式系统边缘计算应用开发 竞赛任务书(第2套)

一、总体要求

二、竞赛任务表

三、标志物摆放位置表

四、竞赛平台位置示意图

数据处理方法—AES加密

一、AES加密概述

二、AES加密过程

三、AES加密示例


全国职业院校技能大赛嵌入式系统应用开发赛项

(第2套)

竞赛模块: 模块一

竞赛注意事项

1. 选手竞赛过程中,各参赛选手应注意设备用电安全,禁止带电插拔设备的组件和模块,设备工作期间务必远离洗板水、饮用水等非绝缘性液体。若因操作不当导致设备出现问题应及时向现场裁判报告,由现场裁判处理。

2. 竞赛期间选手不得做出影响他人的动作,或者发出噪音干扰其他参赛选手正常竞赛。

3. 所有参赛选手进入赛场后,直到比赛结束之前,禁止向赛场任何人透露任何关于个人身份的任何信息。比赛结束前需参赛选手签字确认的所有文件,只填写竞赛当天的赛位号,填写其他信息均视为无效并需要重新签字。

4. 参赛选手要注意及时保存电脑资料,由于操作不当导致文件丢失、损坏的,由参赛选手自行负责。

5. 竞赛第一模块下发的功能电路板含有故障,选手装联过程中需要进行调试,使其能够正常工作。期间若发现物料缺失、损坏等,应在规定时间内补领或更换,申领器件不得超过标准用量,请仔细检查,不得恶意补领器件,超过规定时间之后补领元器件按规程扣除相应分数。选手因装接不当造成的故障不在考查范围之内,但属于选手应当掌握的核心专业技术技能,由选手自行处理解决。

6. 参赛选手应在第一模块竞赛测评开始前,完成程序下载、固化,第一模块竞赛测评阶段开始后,禁止再次更新功能电路核心板程序。

7. 本模块竞赛结束后,参赛选手应将现场下发的所有资料整理并交给现场裁判,不得将现场下发的任何材料带离竞赛现场。

8. 竞赛现场为各赛位下发1块标准功能电路板,用于各参赛选队测试和固化程序,若竞赛测评需要使用标准板进行测评,则根据规程扣除相应分数,标准功能电路板在本模块竞赛结束后回收,不得损坏或带离赛场,否则按照违纪处理。

9. 本题仅为样题,正式赛题以竞赛日现场拆封下发的题目为准。

第一模块 嵌入式系统硬件制作与驱动开发 竞赛任务书(第2套)

一、总体要求

本竞赛模块要求使用竞赛现场下发的嵌入式系统功能电路板(搭载国产自主嵌入式微处理器)完成硬件制作和驱动程序开发与测试,具体竞赛任务要求见竞赛任务表。其中,嵌入式系统驱动开发任务表中竞赛任务1-6由选手自行选择实现方式,任务7-8由裁判基于实时操作系统的命令行终端输入任务测评启动命令后进行各竞赛任务测评。各竞赛任务见竞赛任务表中对应竞赛任务描述。

二、竞赛任务表

(一)功能电路板硬件制作任务表

序号

任务描述

任务要求

1

任务:嵌入式系统功能电路板装配与焊接

1. 根据赛场提供的嵌入式系统板电路图和物料清单,从提供的元器件中选择元器件,准确地焊接在赛场提供的线路板上,完成嵌入式系统硬件制作。

2. 焊接要求:在印制电路板上所焊接的元器件的焊点大小适中、光滑、圆润、干净,无毛刺;无漏、假、虚、连焊,引脚加工尺寸及成形符合工艺要求;导线长度、剥线头长度符合工艺要求,芯线完结果好,捻线头镀锡。

3. 装配要求:元器件焊接安装无错漏,元器件、导线安装及元器件上字符标示方向均应符合工艺要求;电路板上插件位置正确,接插件、紧固件安装可靠牢固;线路板和元器件无烫伤和划伤处,整机清洁无污物。


(二)嵌入式系统驱动程序开发任务表

序号

任务描述

任务要求

1

任务1:GPIO基础驱动开发

要求基于功能电路板通过编程实现GPIO控制。

1. 通过编程实现对板载RGB LED灯亮灭控制,按照红灯、绿灯、蓝灯顺序实现红灯亮起1S后关闭、绿灯亮起1S后关闭、蓝灯亮起1S后关闭。

2. 通过编程实现对板载RGB LED灯的红色灯光亮度渐变控制,要求实现灯光亮度由亮到暗,由暗到亮的呼吸灯效果。

3. 通过编程实现对板载蜂鸣器的开启与关闭控制,要求能够通过按键控制蜂鸣器的开启与关闭。

2

任务2:计时器系统设计

要求参赛选手基于功能电路板通过编程实现计时器系统的设计。

1. 通过编程实现数码管倒计时功能,显示格式为:“-XX-” XX为倒计时时间,单位为秒,倒计时时长由现场裁判指定,不超过99秒。

2. 要求倒计时剩余5秒时,数码管以500ms频率闪烁显示,当倒计时结束后,数码管应显示“----”,同时开启蜂鸣器,以便提示倒计时已结束。

示例:现场裁判要求10秒倒计时,那么数码管从“-10-”开始10秒倒计时。

3

任务3:LCD显示屏显示应用开发

要求基于功能电路板通过编程实现LCD显示指定信息。

1. 通过编程实现在LCD显示指定图形信息,显示图形:三角形、正五角星形、梯形,三角形填充颜色为蓝色、正五角星形填充颜色为绿色、梯形填充颜色为红色,要求显示效果明显便于观察。

2. 通过编程实现LCD显示滑块控件,要求滑块控件步进值为1,最大值为100,最小值为0,控件数值对应RGB灯(仅限绿色)亮度0%-100%,通过改变滑块控件位置能够实现RGB灯(仅限绿色)亮度控制。

4

任务4:语音交互应用开发

要求语音交互系统实现指定文本信息播报及语音识别交互显示。

1. 通过编程实现语音交互系统播报指定文本信息,信息内容为“奏响新时代社会主义民主政治华彩乐章”。

2. 通过编程实现LCD实时显示温度传感器的实时温度数据,显示格式:“当前温度:XX.X℃”,显示位置、字体大小、颜色、屏幕背景颜色选手可自行决定,要求文字显示清晰便于观察。

3. 要求通过语音控制语音模块播报当前温度传感器实时数据,播报格式为:“当前温度为XX.X摄氏度”,待识别词条内容为:“查询当前温度”。

示例:若通过语音说出“查询当前温度”指令,则语音模块应播报:“当前温度为XX.X摄氏度”(播报内容必须是LCD显示的实时温度数据)。

5

任务5:倒车雷达系统设计

要求基于功能电路板通过编程实现倒车雷达系统设计。

1. 通过编程实现LCD实时正确显示超声波传感器数据信息,显示格式:“距离:XXX cm”(误差:±2cm);

2. 当被测距离超过20cm时,LCD显示U盘附件图片A界面,同时RGB灯亮绿色灯光;当被测距离不超过20cm且不小于10cm时,LCD显示U盘附件图片B界面,同时RGB灯亮黄色灯光;当被测距离小于10cm时,LCD显示U盘附件图片C界面,同时RGB灯亮红色灯光且蜂鸣器持续鸣响。

6

任务6:传感器数据采集与显示

要求基于功能电路板通过编程实现温度传感器、光照度传感器数据采集,LCD 显示屏实时正确显示温度传感器、光照强度传感器数据。

1. 通过编程实现启动 LCD 显示屏实时正确显示光照度传感器数据信息,显示格式:“当前环境光强度:XXXXX lx(若 首位为 0,则可以不显示)”。

2. 通过编程实现当光照强度≤100 lx时,RGB LED灯点亮(显示颜色不做要求),当光照强度>100 lx时,RGB LED灯关闭。

7

任务 7:嵌入式系统UI设计开发

要求 LCD 实时显示光照强度传感器数据和动态实时曲线图。

本任务启动命令:task01

1.通过编程实现启动 LCD显示光照度传感器数据和UI曲线图,要求曲线跟随传感器数值变化而变化,当光照度传感器数值上升,则曲线应呈现上升趋势,当传感器数值下降,则曲线应呈现下降趋势。

2. 要求 x 轴为时间信息,y 轴为传感器数据值信息。随着时间的增长,当曲线占据整个屏幕后呈现从左向右滚动状态。

 

3. 示例 UI 界面,具体 UI 界面自行设计,能展示功能和数据变化即可。

8

任务8:GPIO外围设备开发

要求:通过编程实现音符“1,2,3,4,5,6,7”播放

本任务启动命令:task02

使用给定的GPIO口驱动播放器实现音符“1,2,3,4,5,6,7”播放

备注:

1. 竞赛装联调试阶段结束后,参赛选手应停止功能电路板装联、调试,并将电脑置于关闭状态。

2. 竞赛测评过程中,上述任务只能使用1个综合程序完成功能演示,在现场评分裁判口令下,通过板载功能按键或其他方式等逐个实现上述任务的结果展示,单个任务测评演示次数不超过3次,否则认定为任务未完成,如因页面刷新速度过快,导致裁判无法确认显示内容是否正确,后果由选手自行承担。

3. 竞赛测评结束后,参赛选手将功能电路板粘贴加密编号后上交至裁判指定位置。

全国职业院校技能大赛

嵌入式系统应用开发赛项

(第2套)

竞赛模块: 模块二

竞赛注意事项

1. 选手竞赛过程中,各参赛选手应注意设备用电安全,禁止带电插拔设备的组件和模块,且务必远离饮用水、饮料等液体。若因操作不当导致设备出现问题应及时向现场裁判报告,由现场裁判处理。

2. 竞赛期间选手不得做出影响他人的动作,或者发出噪音,干扰其他参赛选手的正常竞赛。

3. 所有参赛选手进入赛场后,直到竞赛结束之前,禁止向赛场任何人透露任何关于个人身份的相关信息。竞赛结束前需参赛选手签字确认的所有文件,只填写竞赛当天的工位号,填写其他信息均无效。

4. 参赛选手要注意及时保存电脑资料,由于操作不当导致文件丢失、损坏的,由参赛选手自行负责。

5. 选手可以在竞赛测试阶段的规定时间内按序进入练习赛道进行测试,每次限时5分钟,参赛队若放弃赛道任务测试机会,队长须前往竞赛测试区确认签字,表明自愿放弃测试机会,此次测试时间轮空且放弃不补,须等待下一轮测试机会,每队测试机会均等。

6. 本模块竞赛共有两轮测评机会,每轮2次测评机会,2次测评合计时长不超过5分钟,超过部分将不记录成绩。取两轮中最高成绩为最终成绩,竞赛平台开始运行后需完全独立完成竞赛任务,期间不得手动控制,在竞赛平台启动之后,至选手确认竞赛测试结束之前,选手不得触碰竞赛平台。

7. 第一轮竞赛测评结束后,各参赛队拥有等长的调试时间与相同的练习赛道使用时间,超过规定时间不得继续操作,需将竞赛单元再次上交至指定位置。

8. 竞赛结束后,参赛选手应将现场下发所有资料、附件、资料盘等整理并交给现场裁判,不得将现场下发的任何材料带离竞赛现场。

9. 本题仅为样题,正式赛题以竞赛日现场拆封下发的题目为准。

第二模块 嵌入式系统应用程序开发 竞赛任务书(第2套)

一、总体要求

参赛选手根据竞赛现场抽取的竞赛任务书编写相关嵌入式系统应用程序,参赛选手需在规定时间内,使嵌入式智能车开发单元A(以下简称“A车”)、嵌入式智能车开发单元B(以下简称“B车”)在智能标志物交互应用沙盘单元模拟的智能化场景中完成各项赛道功能任务。

二、竞赛任务表

序号

任务要求

说明

1

任务1:A车启动

A车放置在D7处,在裁判示意竞赛开始时,选手点击启动按钮,启动智能显示标志物进入计时状态,而后A车驶出。

  1. 智能显示标志物在A车开始移动之前开启计时。
  2. A车按照以下路径行驶:D7→D6→F6→F4→D4→B4→B2→D2→F2→F1

2

任务2:A车进行超声波距离检测

A车在D7→D6→F6路线上行驶,到达F6处,获取位于F7处静态标志物(A)垂直平面到 F6 处中心点的距离。

1. 静态标志物(A)垂直平面与F6中心点距离范围100mm-400mm,记为h。

2. A车须将正确距离信息发送至多功能信息显示标志物(A)显示。测量误差:±20mm。

示例:

测距信息为123mm,则多功能信息显示标志物(A)显示信息为:JL-123。

3

任务3:A车完成智能路灯调光

A车在D6→F6路线上行驶,到达F6处,获取位于F7处智能路灯初始档位,并将智能路灯档位调至目标档位。

1. 智能路灯初始档位记为n。

2. 目标档位计算方式为:(h/100)%4+1计算后得到,其中h为任务2的距离信息,单位为毫米。

4

任务4:A车通过智能ETC系统

A车F6→F4路线上行驶,在F6处附近使智能ETC系统感应到A车上携带的电子标签,查询智能ETC系统闸门开启后A车顺利通过。

A车需在不接触ETC闸杆(闸杆抬起时间约10秒)的情况下通过智能ETC系统。选手应合理设置通过时间,避免闸杆下落触碰A车,若因此导致A车失控,则视为选手控制不当。

5

任务5:A车完成语音交互

A车位于F4处,启动语音识别,获取智能公交站标志物发出的语音信息。

要求A车通过ZigBee将公交站播报对应的语音信息编号按指定格式上传至评分终端。

  1. A车上传语音信息编号格式:

0xAF,0x06,0xXX,0x02,0x00,0x00,0x01,0xBF;其中0xXX代表被识别的语音信息编号,其他字符固定不变。

  1. 智能公交站播报信息与编号说明:

技能成才0x01  匠心筑梦0x02    逐梦扬威0x03

技行天下0x04  展行业百技0x05  树人才新观0x06

6

任务6:A车完成RFID识读

A车继续在F4→B4路线上行驶,在F4→B4路段存在RFID卡片,A车应获取RFID卡片内有效数据。

1. RFID卡片共有3张,读取各卡片数据块内容仅需验证A密钥(0xFF,0xFF,0xFF,0xFF,0xFF,0xFF)即可。

2. 3张RFID卡片随机放置在F4→B4坐标点(含F4、B4)之间的循迹线上,其中有且仅有一张RFID卡片内含有完整且有效信息(有效信息:B车指定路径和B车初始位置,初始位置仅限于D1、D2、E2)其余两张卡片可能为空卡也可能存有干扰信息。

3. RFID卡片指定数据块地址为:第2扇区第2个数据块。

有效信息示例(字符串):D4D6B6|D1,其中指定路径以第1个D4开头,以最后1个B6结束,B车初始位置有效信息为D1。

7

任务7:B车完成智能交通信号灯识别

A车到达B4处,开启A车任务板左右双闪灯与蜂鸣器,左右转向灯进入双闪模式和蜂鸣器进入双闪模式,蜂鸣器响3声后关闭。

B车启动自主行进至D2处,而后启动智能交通信号灯(A)进入识别模式,并在规定的时间内识别出当前停留信号灯的颜色,按照指定格式将正确信息发给智能交通信号灯(A)进行比对确认。

1. B车应在规定的时间内识别出智能交通信号灯颜色,并将识别结果发送至智能交通信号灯(A),超时结果无效。B车识别后只需将结果返回至智能交通信号灯(A)即可,无需执行其他操作。

2. B车需采用视频循迹方式完成所有路径任务,使用其他方式完成路径任务则不得分。

8

任务8:B车通过特殊地形

B车继续在D2→B2路线上行驶,在D2→B2路段上存在特殊地形,B车应顺利通过特殊地形到达B2处。

1. 特殊地形放置在D2→B2循迹线上,中心位置接近C2坐标点。

2. 竞赛测评时裁判现场将特殊地形摆放至指定位置,地形卡片任选一张,所有测评赛道中特殊地形摆放位置与地形卡片保持一致。B车在通过特殊地形时,不能与特殊地形两侧护栏发生碰撞,否则认定任务失败。

9

任务9:B车完成二维码识别

B车到达B2处,识别位于A2处静态标志物(B)上的二维码信息,并将有效数据发送至A车。

B车在B2→B1路线进行避让,等待A车通过。

1. A2处静态标志物(B)中有两个二维码,均需要识别。

2. 二维码(一)信息为固定8个字节长度字符串,有效数据格式为“XYYYXY”字符,X代表大写A~Z中任意一个字母,Y代表0~9中任意一个数字,其他字符均为干扰字符。例如,二维码(一)信息为:“A/145#B6”,则有效数据为“A145B6”字符,为车牌信息。

3. 二维码(二)信息为一个计算公式,仅包含以下运算:加(+)、减(-)、乘(*)、除(/)、次幂(^),涉及计算参数仅为h、n、y;其中h为任务2所得测距距离,n为任务3所测得智能路灯初始档位,y为任务12中所获取的智能立体车库(A)的初始层数。计算结果记为x。例如,二维码(一)信息为:((n*y+h)^4)/100。

10

任务10:A车通过智能道闸

A车位于B4处,控制智能道闸开启后,按照B4→B2→D2→F2路线上行驶,顺利通过特殊地形的路面,到达F2处等待。

1. 智能道闸开启码为任务9中获取的有效数据。

2. 在练习测试赛道发任一车牌均可开启智能道闸,在竞赛测评赛道只有发送任务9中二维码(一)中获取的有效数据才能开启,选手需要控制A车通行时间,应当在智能道闸开启之后快速通过,避免撞上闸杆。

3. 竞赛测评时裁判现场将特殊地形摆放至指定位置,地形卡片任选一张,所有测评赛道中特殊地形摆放位置与地形卡片保持一致。A车在通过特殊地形时,不能与特殊地形两侧护栏发生碰撞,否则认定任务失败。

11

任务11:B车完成智能立体显示交互

B车按照指定路线B1→B2→B4→D4行进到达D4处,向位于E5处的智能立体显示标志物发送红外数据,控制立体智能显示标志物显示指定数据。

1. B车在B2→B4过程中应能自主开启智能道闸,并合理控制好时间,在智能道闸开启之后快速通过,避免撞上闸杆。

2. 智能立体显示标志物使用车牌显示模式显示B车任务9中识别二维码(一)中的车牌信息和任务6中获取的B车初始位置。

12

任务12:B车按指定路线行进并倒车入库

B车在D4处按照A车从任务6中获取的指定路线行进,到达B6处,B车查询智能立体车库(A)中的初始层数,记为y,并使用倒车入库方式进入智能立体车库(A),并控制其上升到指定层数(3层)。

1. B车经过D4处后的行进路线需按照任务6中RFID卡片给定的路径行驶。

2. 选手应在倒车驶入车库前确认车库是否已经下降到一层,并确保在倒车入库后,停在车库合适位置。在车库上升过程中,B车如果发生跌落,则视为选手控制不当。

13

任务13:A车开启智能报警台

A车位于F2处,发送指定格式指令控制位于G3处的智能报警台进入报警状态。

智能报警台开启码由h、n、y、x来确定。将h、n、y、x转为16进制数据,则六字节开启码分别为:x的高八位、x的低八位、h的高八位、h的低八位、n的低八位、y的低八位。其中关于h、n、y、x的说明请参考任务9。

14

任务14:A车完成倒车入库

A车到达F2处,查询智能立体车库(B)中的初始层数,记为z,并采用倒车入库的方式驶入智能立体库(B),并控制其上升到指定层数。A车入库完成后,开启智能无线充电,关闭智能显示标志物计时。

1. 选手应在倒车驶入车库前确认车库是否已经下降到一层,并确保在倒车入库后,停在车库合适位置。在车库上升过程中,A车如果发生跌落,则视为选手控制不当。

2. 智能立体车库(B)上升到指定层数计算方法为:((z+y)^n)%4+1。其中关于n、y的说明请参考任务9。

三、标志物摆放位置表

序号

设备名称

摆放位置

备注

01

智能立体车库(A)

B7

入口朝向B6处

02

智能立体车库(B)

F1

入口朝向F2处

03

多功能信息显示标志物(A)

A6

显示屏朝向B6处

04

多功能信息显示标志物(B)

E1

显示屏朝向E2处

05

静态标志物(A)

G6

静态数据源朝向F6

标志物位置根据赛题需要允许微调

06

静态标志物(B)

A2

静态数据源朝向B2

标志物位置根据赛题需要允许微调

07

智能交通信号灯(A)

C1

信号灯朝向D2处

08

智能交通信号灯(B)

C7

信号灯朝向B6处

09

智能报警台

G3

红外接收器朝向F2处

10

智能公交站

G4

喇叭朝向F4处

11

智能显示标志物

A4

显示屏朝向B4处

12

智能立体显示

E5

标志物中心位于E5处

13

智能ETC系统

F5

天线朝向F6处

14

智能道闸

C3

道闸杆落在B3处

15

智能路灯

F7

光源朝向F6处

16

智能无线充电

E3

标志物中心位于E3处

17

特殊地形

C2

标志物中心位于C2处

18

A车出发点

D7

车头朝向选手自行决定

19

B车出发点

/

RFID卡内数据指定,仅限于D1、D2、E2,车头朝向选手自行决定

20

RFID卡片

3张

在F4-B4循迹线上任意位置上


四、竞赛平台位置示意图

 

全国职业院校技能大赛

嵌入式系统应用开发赛项

(第2套)

竞赛模块: 模块三

竞赛注意事项

1. 选手竞赛过程中,各参赛选手应注意设备用电安全,禁止带电插拔设备的组件和模块,且务必远离饮用水、饮料等液体。若因操作不当导致设备出现问题应及时向现场裁判报告,由现场裁判处理。

2. 竞赛期间选手不得做出影响他人的动作,或者发出噪音,干扰其他参赛选手的正常竞赛。

3. 所有参赛选手进入赛场后,直到比赛结束之前,禁止向赛场任何人透露任何关于个人身份的相关信息。比赛结束前需参赛选手签字确认的所有文件,只填写竞赛当天的工位号,填写其他信息均无效。

4. 参赛选手要注意及时保存电脑资料,由于操作不当导致文件丢失、损坏的,由参赛选手自行负责。

5. 选手可以在竞赛测试阶段的规定时间内按序进入练习赛道进行测试,每次限时5分钟,参赛队若放弃赛道任务测试机会,队长须前往比赛测试区确认签字,表明自愿放弃测试机会,此次测试时间轮空且放弃不补,须等待下一轮测试机会,每队测试机会均等。

6. 本模块竞赛共有两轮测评机会,每轮2次测评机会,2次测评合计时长不超过5分钟,超过部分将不记录成绩。取两轮中最高成绩为最终成绩,竞赛平台开始运行后需完全独立完成竞赛任务,期间不得手动控制,在竞赛平台启动之后,至选手确认比赛测试结束之前,选手不得触碰竞赛平台。

7. 第一轮竞赛测评结束后,各参赛队拥有等长的调试时间与相同的练习赛道使用时间,超过规定时间不得继续操作,需将竞赛单元再次上交至指定位置。

8. 竞赛结束后,参赛选手应将现场下发所有资料、附件、资料盘等整理并交给现场裁判,不得将现场下发的任何材料带离竞赛现场。

9. 本题仅为样题,正式赛题以竞赛日现场拆封下发的题目为准。

第三模块 嵌入式系统边缘计算应用开发 竞赛任务书(第2套)

一、总体要求

本模块竞赛要求使用嵌入式智能车开发单元A(以下简称“A车”)及智能标志物交互应用沙盘单元共同完成嵌入式系统边缘计算应用开发的各项竞赛任务,具体竞赛任务要求见竞赛任务表。

二、竞赛任务表

序号

任务要求

说明

1

任务1:A车启动任务

A车放置 F7 位置处,在裁判示意比赛开始时,选手点击启动按钮,启动智能显示标志物的计时器,而后A车驶出。

1. 智能显示标志物在A车开始移动之后启动、在入库之前停止、中途暂停或未启动,均视为该任务失败,时间均按5分钟计时。

2. A车按照以下路径行驶:B7→B6→D6→D4→B4→B2→D2→F2→F4

2

任务 2:A车车牌识别

A车按照B7→B6 行进,到达B6 位置处,控制 A5 处的多功能显示标志物(A)中图片翻页并识别有效车牌。

1.多功能显示标志物(A)开机或重启后显示一张默认图片,选手需要执行翻页操作找到需要识别的车牌图片(车牌图片上不同位置有 2 张以上车牌信息,有效车牌是黄色轿车的渐变绿色车牌,其他为干扰车牌,数据无效,汉字不需要识别)。

2.多功能显示标志物(A)显示车牌格式为:“国 XYYYXY”。其中“国”固定不变,后面 6 位号码,X 代表 A~Z 中任意一个字母,Y 代表 0~9 中任意一个数字。

3

任务 3:A车控制智能道闸标志物

A车在 B6→C6→D6行进到C6过程中,须将任务2中识别的车牌按照指定格式发送到智能道闸标志物上显示,并控制其开启。

在练习赛道发任意车牌均可开启智能道闸标志物,在比赛赛道只有发送任务2中识别的车牌才能开启,并且智能道闸标志物中会显示识别车牌结果。一段时间之后,智能道闸标志物将自动关闭。选手需要控制好时间,应当在智能道闸标志物开启之后快速通过,避免撞上抬杆。

4

任务 4:A车识别交通信号灯

A车在整个路线上行驶过程中需要进行4次交通信号灯识别任务。分别在D6、B2、D2、F2处识别位于E5、C3、E3的交通信号灯(A/B/C/D)。

1. A车应在规定的时间内识别出交通信号灯颜色,并将识别结果按照指定格式发送至智能交通信号灯,超时结果无效。

2. 例如:到达D6处,控制位于E5处智能交通信号灯(A)进入识别模式,并在规定的时间内识别出当前停留交通信号灯的颜色,按照指定格式发送给智能交通信号灯(A)进行比对确认。

3. A车识别后只需将结果返回至智能交通信号灯即可,无需执行其他操作。

5

任务5:A车二维码识别与语音播报

A车在D4位置处,获取位于C3处的静态标志物(A)上的二维码信息,然后将识别到的二维码信息按照指定格式提前并发送到 智能公交站标志物上进行语音播报。

1. 静态标志物上有五个二维码,一共由红色、蓝色和黑色三种颜色组成,五个二维码摆放位置随机,但不会超出静态标志物显示窗口区。如果存在两个二维码重叠的现象,则被覆盖的二维码不用进行识别,本赛题要求识别红色二维码里面的信息,数据编号正确的二维码有效,其他二维码内容数据无效。

2. 二维码中的数据采用Json格式进行封装,示例如下:

{

"code": "2023",

"algorithm": "A1B4C6D23",  

"result":

  {    

    "purpose": "赛课融通,综合育人"  

},  

  "number": 1

}

3. 对红色二维码识别后的需要先进行数据有效性的判断,其中code则为数据编号,本赛题编号为2023的二维码及其对应的数据有效。

数据有效后,再将purpose所对应的数据提取出来,并发送至智能公交站标志物,示例中code为20223则证明该二维码数据有效,反之则无效,且语音播报内容为:“赛课融通,综合育人”。

6

任务6:A车文字识别与显示

A车从D4到达B2后,在B2位置处,获取位于C1处静态标志物(B)上的文字信息,然后将识别到的文字信息,发送至A1处的智能立体显示标志物中进行显示。

A车在B2处朝向C1处完成文字识别以后,控制智能立体显示标志物进行文本显示,其文本内容需要参赛选手需要将任务5中识别的正确二维码数据中的number对应数据提取处理出来,进行显示。

例如:"number": 3对应值为1;文字内容为:“科技强国”,则是需要控制智能立体显示标志物的内容为汉字“科”。

7

任务7:A车救援报警任务

A车在D2处,向位于E1处的救援报警标志物发送指定红外数据,控制其开启报警。

  1. 救援报警标志物开启报警的指令从任务5中识别正确的二维码数据提取出算法加密前的数据,经过数据处理算法计算后获得。
  2. 加密数据由任务5中的二维码提供,需要对Json字符串进行解析,主要提取"algorithm"所对应的数据,

例如

"algorithm": "A1B4C6D23",则需要进行加密计算的数据为:A1B4C6D23。救援报警标志物开启报警的指令计算方式详见数据处理算法文件,见附件。

8

任务8:A车进行行人检测和交通标志识别

A车在B2→B4→B6路线上行驶,到达B6处,识别静态标志物(A)图片中交通标志类别以及戴口罩行人数量,并将交通标志识别结果发送至智能公交站标志物进行播报。

1.图片中包含多个行人和1个交通标志,要求识别图片中的交通标志以及行人数量。

2.涉及的交通标志类别包含:直行、左转、右转、掉头、禁止掉头、禁止左转、禁止右转、限速标志。

3.图像中的部分行人戴口罩,要求识别出包括被遮挡的行人在内的所有戴口罩行人数量。

4.行人数量对应A车入库编号,记为X,说明如下:

  1. X=行人数量%3,当X=0→车库A;X=1→车库B;X=2→车库C。

9

任务9:A车智能图像识别任务

A车在E2→F3路线上行驶,到达F2处,通过翻页获取位于G2处多功能显示标志物(B)中显示的交通标志信息、图形信息。A车识别交通标志图片,获取交通标志编号。A车识别图形颜色图片,获取图形颜色信息,并按照指定格式将图形信息发送给智能显示标志物上显示(HEX显示模式)。

  1. 涉及的形状仅限于:三角形、圆形、矩形(含正方形)、菱形、五角星,其他不规则图形均为干扰图形,不纳入计算中。
  2. 涉及的颜色仅限于红色(255,0,0)、绿色(0,255,0)、蓝色(0,0,255)、黄色(255,255,0)、品色(255,0,255)、青色(0,255,255)、黑色(0,0,0)、白色(255,255,255)。
  3. 涉及的交通标志仅限于:直行、左转、右转、掉头、禁止通行。
  4. 交通标志对应的编号说明:

直行 编号0x01  左转     编号0x02   右转 编号0x03

掉头 编号0x04  禁止通行 编号0x05

  1. 图形类别统计格式:ABCD,A代表黄色菱形数量,B代表绿色圆形数量,C代表品色三角形数量,D代表在图片中所有图形出现最多的颜色的数量(只有交通标志颜色不计入数量信息内)。多功能显示标志物(A)显示信息格式(HEX显示模式)为“ABCDXX”,其中XX代表交通标志编号。

示例

识别到图片中交通标志为直行,红色矩形数量1个,蓝色圆形数量2个,黄色三角形数量4个,图片中红色图形出现最多,数量为5,则智能显示标志物在HEX显示模式下显示“124501”。

10

任务9:A车倒车入库

A车在 F4 位置处,通过任务8的识别进行根据图形识别信息驶入不同车库,要求采用倒车入库方式,成功入库后关闭智能显示标志物计时器。

  1. A车到达F4时,将有效图形识别的数量进行求和,并进行余4运算,最终来确定A车的车库位置。
  2. 图像数据信息与车库位置说明:

取余运算结果为0进入 1 号车库(坐标点:D7)

取余运算结果为1进入 2 号车库(坐标点:F7)

取余运算结果为2进入 3 号车库(坐标点:G6)

取余运算结果为3进入 4 号车库(坐标点:G4)

例如:有效图形数据总数为14,进行余4运算后,结果为2,则需要将A车停在3号车库。

三、标志物摆放位置表

序号

设备名称

摆放位置

备注

01

智能道闸标志物

C7

抬杆朝向 C6 处

02

智能公交站标志物

G5

喇叭朝向F5处

03

多功能显示标志物(A)

B5

显示屏朝向 B6 处

04

多功能显示标志物(B)

G2

显示屏朝向 F2 处

05

救援报警标志物

E1

红外朝向 D2 处

06

智能交通信号灯(A)

E5

信号灯朝向 D6 处

07

智能交通信号灯(B)

C3

信号灯朝向 B2 处

08

智能交通信号灯(C)

E3

信号灯朝向 D2 处

09

智能交通信号灯(D)

E3

信号灯朝向 F2 处

10

智能显示标志物

A3

显示屏朝向 B3 处

11

智能立体显示标志物

A1

正面朝向B2 处

12

静态标志物(A)

C3

静态数据源朝向 D4

标志物位置根据赛题需要微调

13

静态标志物(B)

C1

静态数据源朝向 B2

标志物位置根据赛题需要微调

14

A车出发点

B7

A车放置在 B7 处

车头方向由选手自行决定


四、竞赛平台位置示意图

 

数据处理方法—AES加密

一、AES加密概述

密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法。该算法为比利时密码学家Joan Daemen和Vincent Rijmen所设计,结合两位作者的名字,以Rijdael之名命名。此密码是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES(Data Encryption Standard),已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。

二、AES加密过程

AES加密的基本原理就是把明文分成若干组,每组长度相等,每次加密一组数据,直到加密完所有明文。

1. 根据二维码中提取的有效文本信息(以下简称明文),将明文用字节为单位的正方形矩阵进行表示(以下简称状态矩阵)。状态矩阵中字节排列按照从上到下、从左至右依次排列。

2. 如果明文二进制位数长度(以下简称明文位长)不足128,则需要进行字节填充。填充规则:需要填充的字节长度=(128 – 明文位长)÷ 8,使用需要填充字节的长度对所有空缺位进行补全(如明文=0123456789ABCDE,明文长度为120,缺少1个字节,则空缺位补0x01)。

3. 设密钥K=“abcdefghijklmnop”(k为固定密钥),则K0=‘a’,K1=‘b’,…, K15=‘p’。密钥K内均为字符,设密钥矩阵 W[0] = 0xK0K1K2K3 = 0x61626364,W[1]、W[2]、W[3]以此类推。W[4-43]为扩展密钥,针对扩展密钥的推导公式如下:(其中rcon为轮常量,详见Rcon常量表;S表示S盒,详见AES标准S盒。)

:Rcon常量表(16进制)

 :AES标准S盒

 

4. 字节替换。状态矩阵中的元素按照指定方式映射为一个新的字节。映射方式:把该字节的高4位作为行值,低4位作为列值,取出S盒中对应的行的元素作为输出。

5. 行移位。行移位是一个简单的循环左移操作。当密钥长度为128(bit)时,状态矩阵的第0行左移0字节,第1行左移1字节,第2行左移2字节,第3行左移3字节。

6. 列混合。列混合变换是通过求和来实现的,经过行移位后的状态矩阵与固定矩阵相加求和,得到混淆后的状态矩阵,列混淆固定矩阵(16进制)见下表:

 

7. 轮密钥加。轮密钥加是将128位轮密钥Ki与状态矩阵中的数据进行逐位异或操作。第一轮密钥矩阵为W[4i]~W[7i],状态矩阵第一列与W[4i]分别进行按位异或操作(长度均为4字节),第二列与W[4i+1],以此类推。

8. 将步骤7之后产生的状态矩阵进行重复加密(循环步骤4、5、6、7),直至加密十轮后得到混淆后的状态矩阵,状态矩阵共16位字节。

9. 状态矩阵进行每一列的字节求和,完成求和后取结果低八位,以此类推。分别取出后,S盒中(0,0)和(F,F)中的值分别作为六字节红外报警码的第1、2字节,然后将4列之和按顺序放入,最终完成排列,得到六字节红外报警码。

三、AES加密示例

1. 设二维码有效数据为“0123456789ABCDE”。由于数据长度不够128(bit),故进行填充,填充长度为1位,填充数据为0x01。填充完成后排列出状态矩阵:

 (1)扩展的第1轮的密钥需要计算(W[4],W[5],W[6],W[7])。由于4是4的倍数,由公式:可知计算过程,计算步骤如下:

1)W[3]的元素循环左移8位:(W[4-1]<<<8)= 0x6E6F706D;

2)将6E 6F 70 6D作为S盒的输入,输出为:9f a8 51 3c(例如字节为0x6E,则查S盒的第6行和E列,得到0x9f);

3)将9f a8 51 3c与第1轮常量进行异或运算,得到结果:9e a8 51 3c;

4)将W[0]与0x9ea8513c进行异或运算,则0x61626364  0x9ea8513c = 0xffca3258,

所以得到W[4] = 0xffca3258;

(2)再根据不是4的倍数的扩展公式:                  得到W[5] = 0x9AAC5530,W[6] = 0xF3C63E5C,W[7] = 0x9EA8512C;由此第一轮的密钥为:FFCA3258 9AAC5530 F3C63E5C 9EA8512C。W[8]、W[9]、…、W[43] 以此类推。

2. 把状态矩阵的第1个字节的高4位作为行值,低4位作为列值,取出S盒中对应的元素作为输出,然后进行逐步替换,经替换后新的状态矩阵如下:

3. 把状态矩阵按顺序进行循环移位,经移位后新的状态矩阵如下:

4. 把状态矩阵与固定矩阵进行列混合操作,经混合后新的状态矩阵如下:

5. 把状态矩阵与第一轮密钥矩阵进行逐位异或运算。状态矩阵第一列为0x12、0xA1、0x90、0x85,密钥矩阵W[4] = 0xFF、0xCA、0x32、0x58,两者进行异或运算得到新的状态矩阵第一列,以此类推,经过轮密钥加后新的状态矩阵如下:

6. 通过步骤3、4、5、6后得到第一轮的状态矩阵,将第一轮状态矩阵结果作为第二轮的状态矩阵输入,再次重复步骤3、4、5、6,重复十轮后得到最终状态矩阵如下:

7. 将状态矩阵每一列进行求和运算并取出低八位,然后取出S[0,0]和S[F,F],按顺序排列后得到最终的六字节报警台开启码:0x63,0x16,0x7C,0x48,0xAC,0x40。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐