EN
赛昉科技教你如何采用RISC-V开发板实现小车自动巡线行驶

2022.01.07

近期DFRobot开发出了一款巡线小车的展品,该展品使用了搭载赛昉科技JH7100(昉·惊鸿7100)芯片的RISC-V主控开发板,运行Fedora Linux操作系统。在PinPong Python库的支持下,采用Mind+编程软件进行GPIO的控制。本小车通过HUSKYLENS(二哈识图)视觉传感器进行路线智能识别,实现了自动巡线行驶的功能。

一、展品说明

1、赛昉科技JH7100

昉·惊鸿7100搭载了双核U74 ,共享2MB的二级缓存,工作频率可达1.2GHz,支持Linux操作系统。其中,赛昉科技自主研发的ISP适配主流传感器,内置的图像视频处理子系统支持H265/H264/JPEG编解码。集成高性能、低功耗的Vision DSP和NNE让应用开发更加智能且高效。昉·惊鸿7100能完成各种复杂的视频图像处理与智能视觉计算,满足边缘端的多种视觉实时性处理需求。

2、PinPong库

PinPong库是一套控制开源硬件主控板的Python库,基于Firmata协议并兼容MicroPython语法,5分钟即可上手使用Python控制开源硬件。借助于PinPong库,直接用Python代码就能给各种常见的开源硬件编程。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,执行各种命令。PinPong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的业务实现。哪怕程序编写初期用Arduino开发,部署时改成了主控开发板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。在DFRobot与赛昉科技的工程师共同的努力下,PinPong库已经完全适配了赛昉科技RISC-V主控板,并且可以顺利的使用PinPong库,直接对各种传感器进行读取和执行器的操作。

3、Mind+


Mind+是一款拥有自主知识产权的国产青少年编程软件,集成各种主流主控板及上百种开源硬件,支持人工智能(AI)与物联网(IoT)功能,既可以拖动图形化积木编程,还可以使用Python/C/C++等高级编程语言,让大家轻松体验创造的乐趣。Mind+不仅支持图形化的编程,也支持Python的编程,通过简化环境配置等一系列的工作,让我们实现打开就可以进行工作的状态。目前,DFRobot已经完成了对赛昉科技JH7100 SoC的适配工作,可以采用低代码的方式对赛昉科技RISC-V主控板进行开发,进一步降低了赛昉科技VisionFive单板计算机的开发难度。

4、HUSKYLENS(二哈识图)视觉传感器


本巡线小车采用HUSKYLENS(二哈识图)作为视觉传感器。HUSKYLENS作为一款简单易用的人工智能摄像头(视觉传感器),内置了6种功能:人脸识别、物体追踪、物体识别、巡线追踪、颜色识别、标签识别、物体分类、二维码识别、条形码识别。仅需一个按键即可完成AI训练,摆脱繁琐的训练和复杂的视觉算法,使开发者能够更加专注于项目的构思和实现。HUSKYLENS板载UART / I2C接口,可以连接到Arduino、Raspberry Pi、LattePanda、Microbit等主流开发板,实现硬件无缝对接,直接输出识别结果给控制器,无需折腾复杂的算法,就能制作非常有创意的项目。本次小车展品实现了HUSKYLENS与赛昉科技RISC-V主控开发板的适配。

二、实现步骤

1、功能

a) 用PinPong驱动小车行动,用二哈识图来进行巡线;

b) 二哈视图与赛昉科技JH7100采用I2C总线进行通讯;

c) 用2个IO口来控制电机方向;

d) 用2个PWM口来控制电机速度;

e) 开机自动运行。

2、特点

a) 自动运行;

b) 可扩展开发;

3、使用步骤

a) 主板上电进入系统后,便会马上自动执行 /root/linefollower.py;

b) 巡线识别的学习需要人为去控制,点击HUSKYLENS右上角的按钮,学习需要识别的黑色的线,白色的带箭头的线变为蓝色的线就说明学习完成;

c) 学习完成之后便可放在巡线跑道上,开始巡线。

这一案例,展示出赛昉科技RISC-V开发板在机器人领域应用上的巨大的潜力,并且能够很好的适配各类传感器进行物联网控制。下一阶段,赛昉科技将与DFRobot进行深入合作,基于赛昉科技VisionFive单板计算机及新一代JH7110芯片,共同开发更多的物联网工控应用,促进物联网领域的应用落地。

热门新闻