目的

使用哪吒A36合1Arduino套装制作手持机械爪。
30_1x.png

购买链接

哪吒A36合1Arduino套装

所需材料

1_1x.png
搭建图下载:
手持机械爪.pdf

硬件连接图

将电机连接到哪吒A主控盒的M1端口,将两颗按钮安装在哪吒A主控盒的J1端口。
两个旋钮和电机_.png

编写程序

准备编程环境

编程环境准备步骤:请参考:编程环境准备及示例
下载并导入主控盒的库文件和依赖库文件后,还需要导入两颗按钮模块的库文件:PlanetXButton-main.zip
和主控盒的接口定义文件:RJPins-main.zip

示例程序:

  1. // Language ArduinoC
  2. #include <RJPins.h>
  3. #include <NezhaA.h>
  4. #include <PlanetXButton.h>
  5. PlanetXButton buttonJ1(J1); //创建一个PlanetXButton类的实例
  6. NezhaA nezhaA; //创建一个NezhaA类的实例
  7. int flag; //创建变量flag用于记录机械爪的状态
  8. void setup() {
  9. nezhaA.begin(); //初始化蜂鸣器、电机、舵机、灯光
  10. }
  11. void loop() {
  12. if ((buttonJ1.isPressed(C)) && (flag == 0)) { //当检测到按键C被按下且flag等于0时
  13. nezhaA.setMotorSpeed(M1, 100); //设置M1端口的电机速度为100%
  14. delay((1) * 1000); //延时2000ms
  15. nezhaA.brakeMotor(M1); //设置M1端口的电机停止转动
  16. flag = 1; //设置flag等于1,标识机械爪为松开的状态
  17. }
  18. if ((buttonJ1.isPressed(D)) && (flag == 1)) { //当检测到按键D被按下时
  19. nezhaA.setMotorSpeed(M1, -100); //设置M1端口的电机速度为-100%
  20. delay((1) * 1000); //延时2000ms
  21. nezhaA.brakeMotor(M1); //设置M1端口的电机停止转动
  22. flag = 0; //设置flag等于0,标识机械爪为抓取物品的状态
  23. }
  24. }

结果

先调整机械爪到适合抓取物品的位置,开启电源后,按下C按钮后,机械爪松开物品,按下D按钮后,机械爪抓住物品。