DFROBOT提供的二哈识图是很好的人工智能体验平台,但放到TT上飞行较为不便,本项目将二哈识图传感器与掌控板连接起来,二哈识图传感器在平台自带的物体识别模块下训练好后,在Mind+平台上进行编程,将训练结果通过掌控板,以高低电平的方式反馈给EP的传感器转接模块。
代码
#说明:以下为烧录进掌控板的Arduino程序
#include <MPython.h>
#include <DFRobot_HuskyLens.h>
// 函数声明
void onButtonAPressed();
// 创建对象
DFRobot_HuskyLens huskylens;
// 主程序开始
void setup() {
mPython.begin();
buttonA.setPressedCallback(onButtonAPressed);
huskylens.beginI2CUntilSuccess();
huskylens.writeAlgorithm(ALGORITHM_OBJECT_CLASSIFICATION);
}
void loop() {
huskylens.request();
display.fillInLine(1, 0);
rgb.write(1, 0x000000);
rgb.write(2, 0x000000);
if (huskylens.isAppear(1,HUSKYLENSResultBlock)) {
display.setCursorLine(1);
display.printLine("hello,mimi");
rgb.write(1, 0x00FF00);
digitalWrite(P0, HIGH);
}
else if (huskylens.isAppear(2,HUSKYLENSResultBlock)) {
display.setCursorLine(1);
display.printLine("hi,commander");
rgb.write(2, 0x00FF00);
digitalWrite(P0, HIGH);
}
else {
digitalWrite(P0, LOW);
}
delay(1000);
}
// 事件回调函数
void onButtonAPressed() {
display.setCursorLine(1);
display.printLine("测试程序");
rgb.write(1, 0xFF0000);
rgb.write(2, 0x0000FF);
digitalWrite(P0, LOW);
}
代码
//说明:以下为EP控制端python主程序(部分)
# 获取传感器转接板io电平
io = ep_sensor_adaptor.get_io(id=1, port=1)
print("sensor adapter id1-port1 io is {0}".format(io))
if int(io) == 1:
ep_robot.play_audio(filename="welcome.wav").wait_for_completed()
ep_robot.play_audio(filename="welcome.wav").wait_for_completed()
ep_robot.play_audio(filename="welcome.wav").wait_for_completed()
else:
ep_robot.play_audio(filename="alarm.wav").wait_for_completed()
EP控制端程序根据传感器转接模块识别出的高低电平播放欢迎词或报警声
评论