9002浏览
查看: 9002|回复: 3

徐州三期 校园全能王-凯伦1号

[复制链接]
校园全能王-凯伦1号

校园多功能机器人



主要功能:校园引路、校园快递和文件分发、校园卫生打扫、除草

徐州三期 校园全能王-凯伦1号图9
我们的团队:“群商众议”队
作品介绍:
智能制造  一专多能
立足现在   面向未来


硬件及连接





徐州三期 校园全能王-凯伦1号图1






制作步骤:

1.电路连接

徐州三期 校园全能王-凯伦1号图3

2.周边包围制作

徐州三期 校园全能王-凯伦1号图4


徐州三期 校园全能王-凯伦1号图5

3.贴纸上色

徐州三期 校园全能王-凯伦1号图6

4.除草机

徐州三期 校园全能王-凯伦1号图7

5.超声波传感器

徐州三期 校园全能王-凯伦1号图8

6.整体展示

徐州三期 校园全能王-凯伦1号图2

代码

boolean __ardublockDigitalRead(int pinNumber)
{
  pinMode(pinNumber, INPUT);
  return digitalRead(pinNumber);
}


void setRomeoMotor(int motorId, int speed)
{
  int speedPin, directionPin;
  if (motorId == 1)
  {
    speedPin = 6;
    directionPin = 7;
  }
  else
  {
    if (motorId == 2)
    {
      speedPin = 5;
      directionPin = 4;
    }
    else
    {
      return;
    }
  }


  if (speed == 0)
  {
    digitalWrite(speedPin, LOW);
  }
  if (speed > 0)
  {
    digitalWrite(directionPin, HIGH);
    analogWrite(speedPin, speed);
  }
  else
  {
    digitalWrite(directionPin, LOW);
    analogWrite(speedPin, -speed);
  }
}
void __ardublockDigitalWrite(int pinNumber, boolean status)
{
  pinMode(pinNumber, OUTPUT);
  digitalWrite(pinNumber, status);
}

int ardublockUltrasonicSensorCodeAutoGeneratedReturnCM(int trigPin, int echoPin)
{
  long duration;
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  digitalWrite(trigPin, LOW);
  digitalWrite(trigPin, HIGH);
  duration = pulseIn(echoPin, LOW);
  duration = duration / 59;
  if ((duration <=0) || (duration > 45000)) return false;
  delay(50);
  return duration;
}


void setup()
{
  pinMode( 7 , OUTPUT);
  pinMode( 6 , OUTPUT);
  pinMode( 5 , OUTPUT);
  pinMode( 4 , OUTPUT);
  digitalWrite(4, LOW);

  digitalWrite(5, LOW);

  digitalWrite(6, LOW);

  digitalWrite(7, LOW);

  pinMode( 8 , OUTPUT );

  pinMode( 12 , INPUT );

  digitalWrite( 8 , HIGH );

  delay(500);

}

void loop()
{
  if (__ardublockDigitalRead(3))
  {
    setRomeoMotor(1, 200);
    setRomeoMotor(2, 200);
    delay( 2000 );
    setRomeoMotor(1, 100);
    setRomeoMotor(2, 200);
    delay( 2000 );
    setRomeoMotor(1, 200);
    setRomeoMotor(2, 200);
    delay( 2000 );
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  else
  {
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  if (__ardublockDigitalRead(5))
  {
    setRomeoMotor(1, -200);
    setRomeoMotor(2, -200);
    delay( 2000 );
    setRomeoMotor(1, -100);
    setRomeoMotor(2, -200);
    delay( 2000 );
    setRomeoMotor(1, -200);
    setRomeoMotor(2, -200);
    delay( 2000 );
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  else
  {
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  if (__ardublockDigitalRead(2))
  {
    __ardublockDigitalWrite(8, HIGH);
    delay( 5000 );
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  else
  {
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
  if (( (         ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 8 , 12 ) ) < ( 40 ) ))
  {
    setRomeoMotor(1, 200);
    setRomeoMotor(2, 200);
    setRomeoMotor(1, map (         ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 8 , 12 ) , 3 , 40 , 60 , 255 ) );
    setRomeoMotor(2, map (         ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 8 , 12 ) , 3 , 40 , 60 , 255 ) );
  }
  else
  {
    setRomeoMotor(1, 0);
    setRomeoMotor(2, 0);
  }
}
总结:通过学习,我们了解Arduino的主板连接和电路连接,后期小车还可以开发更多的连接和应用。


4.jpg
IMG_20170622_145432.jpg

三叔  学徒 来自手机

发表于 2017-6-24 21:57:26

回复

使用道具 举报

三叔  学徒 来自手机

发表于 2017-6-24 21:57:29

回复

使用道具 举报

创客探索者  学徒

发表于 2019-6-11 17:28:55

学习借鉴
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
关于楼主
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail