浅谈Molex的下一代电动汽车电池连接系统

发布时间:2024-01-26  

课程目标

  • 学习走迷宫的右手法则的应用

  • 根据算法逻辑实现走迷宫功能

  • 能根据场地实际要求进行车辆调试

相关知识

**机器人迷宫项目:**是常见的机器人竞赛项目,在一个搭建好的迷宫场景内,设计机器人,实现从入口顺利抵达出口,根据完成时间的长短来进行评分。

右手法则: 针对有墙壁的迷宫,只要顺着墙壁走,遇到可以转向的口子始终向右,转向失败再向右转到下一个可以走的方向,这种方法只对树形迷宫有效。对于有循环的迷宫就需要设计更加智能化的机器人才能实现。

**红外接近传感器:**红外接近传感器是一种集发射与接收于一体的光电开关传感器。当发出的红外光碰撞到范围内的目标时,它会反射到光电二极管上,从而实现监测判断。

1.jpg

电路搭建

所需材料

ArduinoUNO * 1
红外接近传感器 * 3
上节课的车辆结构 * 1
LED * 1
杜邦线若干

电路连接

图片

程序编写

练习一:红外接近传感器控制开关灯

手靠近传感器时,LED灯开,离开传感器时,LED灯关。

图形化方式:

读取9号管脚上的信号值为低电平,说明有障碍物靠近,这时候点亮2号管脚上的LED。

图片

代码方式:


/* 项目名称:红外控制开关灯

 * 项目时间:2022.04.07

 * 项目作者:MRX

 */

int SensorPin = 9;

int LedPin = 2;

void setup() {

  pinMode(SensorPin,INPUT);

  pinMode(LedPin,OUTPUT);

}



void loop() {

  if(digitalRead(SensorPin)){

    digitalWrite(LedPin,LOW);

  }

  else{

    digitalWrite(LedPin,HIGH);

  }

}


练习二:沿墙面前进的小车

使用一个传感器,让小车能够沿着墙面前行,效果如下:

图片

原理分析:

右手法则逻辑分析。

图片

电路接线:

图片

图形化方式:

图片

代码方式:


/* 项目名称:小车贴墙走

 * 项目时间:2022.04.07

 * 项目作者:MRX

 */

int IN1 = 2;   // IN1 connected to pin 4

int IN2 = 4;   

int ENA = 3; 

int IN3 = 6;   // IN3 connected to pin 6

int IN4 = 7;   

int ENB = 5;  

int value = 255;   // the duty cycle

const int SensorPin = 10;



void Forward() {

  digitalWrite(IN1,HIGH);

  digitalWrite(IN2,LOW);

  analogWrite(ENA,value);

  digitalWrite(IN3,HIGH);

  digitalWrite(IN4,LOW);

  analogWrite(ENB,value);

}



void Back() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,value);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,value);

}



void Right() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,value);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,0);

}



void Left() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,0);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,value);

}



void Stop() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,LOW);

  analogWrite(ENA,0);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,LOW);

  analogWrite(ENB,0);

}



void setup(){

  Serial.begin(9600);

  for (int i = 2;i <= 7;i++){

    pinMode(i, OUTPUT);

    }

  pinMode(SensorPin,INPUT);

}


void loop(){

  if (digitalRead(SensorPin) == LOW) {

      Left();

    } else{

      Right();

    } 

}


练习三:走迷宫小车

编程控制小车沿着障碍物行走,效果如下:

图片

图形化方式:

图片



代码方式:


项目所涉及到的延时及电机正反转,都要根据自己的接线来进行调整。


/* 项目名称:走迷宫

 * 项目时间:2022.04.07

 * 项目作者:MRX

 */

int IN1 = 2;   // IN1 connected to pin 4

int IN2 = 4;   

int ENA = 3; 

int IN3 = 6;   // IN3 connected to pin 6

int IN4 = 7;   

int ENB = 5;  

int value = 255;   // the duty cycle



void Forward() {

  digitalWrite(IN1,HIGH);

  digitalWrite(IN2,LOW);

  analogWrite(ENA,value);

  digitalWrite(IN3,HIGH);

  digitalWrite(IN4,LOW);

  analogWrite(ENB,value);

}



void Back() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,value);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,value);

}



void Right() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,value);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,0);

}



void Left() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,0);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,HIGH);

  analogWrite(ENB,value);

}



void Stop() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,LOW);

  analogWrite(ENA,0);

  digitalWrite(IN3,LOW);

  digitalWrite(IN4,LOW);

  analogWrite(ENB,0);

}



void TurnLeft() {

  digitalWrite(IN1,LOW);

  digitalWrite(IN2,HIGH);

  analogWrite(ENA,100);

  digitalWrite(IN3,HIGH);

  digitalWrite(IN4,LOW);

  analogWrite(ENB,100);

}



void setup(){

  for (int i = 2;i <= 7;i++){

    pinMode(i, OUTPUT);

    }

  for (int i = 8;i <= 10;i++){

    pinMode(i,INPUT);

  }


}


void loop(){

  if (digitalRead(8) == LOW) {

    TurnLeft();

    delay(500);



  } else if (digitalRead(9) == LOW) {

    TurnLeft();

    delay(200);

  } else if (digitalRead(10) == LOW) {

    Left();

  } else {

    Right();

  }

}


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>