站内搜索
发作品签到
高速不可控遥控车
标准版

高速不可控遥控车

6.4k
0
0
9

简介

非常适合自己组装玩的高速不可控遥控车 使用FSI6遥控器 距离500M以内没问题 起步过快 注意安全

简介:非常适合自己组装玩的高速不可控遥控车 使用FSI6遥控器 距离500M以内没问题 起步过快 注意安全

开源协议

创建时间:2021-03-09 09:34:54更新时间:2022-04-15 09:23:34

描述

遥控车太慢了!!!我受不了!自己做一个!说干就干,基于ARDUINO手机蓝牙控制,完成了这个超强的作品,全手工制造。欢迎学习。少走弯路!
作者:漫步在宇宙的边缘
https://www.bilibili.com/read/cv6217381
出处: bilibili

这是第11代成品车 性能有很大的提升了 项目公布了原理图和PCB大家可以自己下载使用


#include 
#define LED     2
#define NUM_LEDS    6
CRGB leds[NUM_LEDS];

#define PINX A5
#define PINY A3
#define PINKG A1

#define PINLU 5
#define PINLD 6
#define PINRU 10
#define PINRD 9

int TZ=200;//速度调整
int speedcal=0;

int Direction;//方向原始数据
int correctionXR;//x修正后的X
int correctionXL;//x修正后的X
int spd=255;
unsigned long Speed;
unsigned long KGSG;
void motorprint();
void motorcontrol();
void dealX();//X方向调整

void motorprint()
{
  pinMode(PINX, INPUT); //设置引脚为输入模式
  pinMode(PINY, INPUT); //设置引脚为输入模式
  pinMode(PINKG, INPUT); //设置引脚为输入模式
  pinMode(A0, OUTPUT); //设置引脚为输入模式
  pinMode(LED, OUTPUT); //设置引脚为输入模式

    pinMode(PINLU, OUTPUT); //设置引脚为输出模式
    pinMode(PINLD, OUTPUT); //设置引脚为输出模式
    pinMode(PINRU, OUTPUT); //设置引脚为输出模式
    pinMode(PINRD, OUTPUT); //设置引脚为输出模式

    digitalWrite(PINLU,LOW);
    digitalWrite(PINLD,LOW);
    digitalWrite(PINRU,LOW);
    digitalWrite(PINRD,LOW);
}

void motorcontrol()
{
  if ((TZ>5)&&(Speed>Direction))
  {
     speedcal=(Speed-Direction);
     analogWrite(PINLU,constrain(Speed,0,254));
     analogWrite(PINLD,constrain(Speed,0,254));
     analogWrite(PINRU,constrain(speedcal,0,254));
     analogWrite(PINRD,constrain(speedcal,0,254));
  }
  else if (TZ<-5)
  {
  //  speedcal=constrain(map((Speed+Direction),Speed,310,Speed,250),Speed,250);
    speedcal=(Speed+Direction);
    analogWrite(PINLU,constrain(speedcal,0,254));
    analogWrite(PINLD,constrain(speedcal,0,254));
    analogWrite(PINRU,constrain(Speed,0,254));
    analogWrite(PINRD,constrain(Speed,0,254));
  }
  else
  {
    analogWrite(PINLU,constrain(Speed-5,0,254));
    analogWrite(PINLD,constrain(Speed-5,0,254));
    analogWrite(PINRU,constrain(Speed+1,0,254));
    analogWrite(PINRD,constrain(Speed+1,0,254));
  } 

}

void setup()
{

 // Serial.begin(19200);
   motorprint();
   FastLED.addLeds(leds, NUM_LEDS);
   digitalWrite(A0,HIGH);

   for(int i=0;i<6;i++)
   {
    leds[i] = CRGB ( 225,255,255);
   }
   FastLED.show();

}

void loop()
{

  /*Speed =pulseIn(Y, HIGH,80000);
Direction =pulseIn(X, HIGH,80000);
 KGSG = pulseIn(KG, HIGH,80000);*/

  KGSG = pulseIn(PINKG, HIGH,80000);
  if(KGSG<1100)
  {
  spd=3;
     for(int i=0;i<6;i++)
   {
    leds[i] = CRGB ( 0,0,255);
   }
   FastLED.show();
  }
  else if(KGSG<1700)
  {
  spd=2;
     for(int i=0;i<6;i++)
   {
    leds[i] = CRGB ( 225,0,255);
   }
   FastLED.show();}
  else if(KGSG<2000)

  {spd=1;
     for(int i=0;i<6;i++)
   {
    leds[i] = CRGB ( 225,0,0);
   }
   FastLED.show();
   }
  else
  spd=255;

  Speed=(constrain(map(pulseIn(PINY, HIGH,80000),989,1968,0,250), 0, 250)/spd);
  Direction =constrain(map(pulseIn(PINX, HIGH,90000),998,1982,-TZ,TZ),-TZ,TZ); 

  if (Speed<20)
  {
    Speed=0;
    digitalWrite(A0,LOW);
    motorcontrol();
  }
  else
  {
       digitalWrite(A0,HIGH);
       motorcontrol();
  }

}

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
短距离加速爆炸效果.mp4
2205
2
长距离加速-亲人两行泪效果.mp4
1326
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航