题库首页 › 青少年软件编程(机器人) › 题目 5382

主题:电位器控制直流电机转动 器件:ESP32主控、码盘、光电对管、SSD1306 OLED显示屏、按键模块、直流电机驱动模块、直流电机、电位器。 要求: (1)通过按键控制电机启停。当按键模块按下后,电机开始转动;当再次按下按键模块,直流电机转动停止。 (2)通过电位器控制电机的转动范围,直流电机在转动范围内正反循环转动。 (3)当电位器位于一侧端部时,直流电机的循环转动范围是0°~180°;当电位器位于另一侧端部时,直流电机的循环转动范围是0°~360°;当电位器位于两端中间位置时,直流电机在相应的转动范围内正反循环转动。 (4)正反循环转动是指当马达旋转至转动范围的上限或下限时,停止并反向转动。 (5)通过码盘和光电对管模块,采用中断控制直流电机的旋转位置。 (6)将光电对管读取的码盘读数实时显示到OLED显示屏上。 (7)控制程序采用C代码编写。 (8)SSD1306 OLED显示屏可使用教材对应的库,其它程序编写均不得使用外部库调用。 (9)直流电机、码盘及光电对管需有效固定。 (10)为了方便展示效果,可知直流电机轴上安装车轮或其它标志物。 (11)未作规定处可自行处理,无明显与事实违背即可。 说明: 请考生在考试结束前,按如下要求提交程序文件 (1) 将所有程序放在一个文件夹,并将文件夹命名为:DJKS6_身份证号; (2) 将程序文件压缩为1个文件,“rar或zip”格式,大小5M以下; (3) 将程序文件通过“上传附件”按钮进行上传。 参考资料 Ssd1306Console类库头文件和相关类库函数如下,供参考。 头文件: ssd1306.h ssd1306_console.h 类库对象: Ssd1306Console 部分成员函数: ssd1306_128x64_i2c_init(); //初始化SSD1306显示屏 ssd1306_clearScreen(); //清除屏幕 ssd1306_setFixedFont(ssd1306xled_font6x8); //设置显示的文字字体为ssd1306xled_font6x8。 Ssd1306Console.println() //输出内容到SSD1306显示屏

正确答案:参考实现(ESP32 C):码盘+直流电机+电位器+SSD1306+按键。按键启停电机。电位器控制转动范围:一端0°~180°,另一端0°~360°,中间按比例。正反循环转动(到限反向)。码盘光电中断控位置,OLED显示码盘读数。核心:电位器定范围+码盘位置+正反循环。

试卷来源:202109 青少年等级考试机器人实操真题六级

在线做题 同科目题库