找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9286|回復(fù): 7
打印 上一主題 下一主題
收起左側(cè)

循跡避障藍牙小車電路圖源代碼全部資源

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:150290 發(fā)表于 2016-11-26 11:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*****************ZYJJB09-C智能循跡、避障機器人*****************
//=====================================================================
                      ZYJJB09-C 單獨紅外避障演示程序                     
  本程序通過前方的紅外探頭來檢測前面的的信號,當(dāng)前方有障礙物時
,紅外接收到信號,與黑色接受管檢測的紅外相應(yīng)端口低電平,我們就可以根據(jù)這和
  判斷條件來進行

  聲明:由于紅外接收頭對光線要求較高,所以對于黑白兩種顏色選擇對比度  
高為好,而且因為道路建立不同,需要根據(jù)實際的需要來改寫相應(yīng)的延遲時間
以適應(yīng)角度的最有較轉(zhuǎn)彎,道路應(yīng)根據(jù)紅外接收頭的兩個寬度來制定,如果道
路較小,或較大者,請調(diào)整以適應(yīng)小車的正確運行.                        
  備注:這里的程序以走白線為主,當(dāng)用戶需要選擇走黑線時,請根據(jù)例程作出
實際修改。并改寫相應(yīng)的延遲時間函數(shù),以進行轉(zhuǎn)彎角度在的最優(yōu)化調(diào)整.   

*  平臺:ZYJJB09-C智能循跡、避障機器人 + Keil U4 + STC89C52
*  程序名稱:ZYJJB09-C 單獨紅外避障演示程序
*  公司:湖南智宇科教設(shè)備有限公司      
*  編寫:智宇公司研發(fā)一部
*  日期:2015-1-15
*  交流:智能車QQ:1018973181
*  晶振:11.0592MHZ
*  售后技術(shù)說明:免費開源,不支持客戶自己修改程序分析與改正,可以提供我公司程序說明
*  免費結(jié)緣:5星好評贈送18個資料包,追加評價后再加送20G資料,網(wǎng)上網(wǎng)盤下載
*  視頻教程:本小車配套學(xué)習(xí)C語言詳細視頻教程,資料統(tǒng)一網(wǎng)盤下載
******************************************************************/ //
//  程序備注: 此程序僅為表現(xiàn)本機功能而演示用,當(dāng)用作實際工程時請慎用.   //
//=====================================================================//
#include <REGX52.H> //包含51單片機相關(guān)的頭文件


sbit LeftIR=P1^1;                         //定義前方左側(cè)紅外探頭端口
sbit RightIR=P1^0;                        //定義前方右側(cè)紅外探頭端口

sbit bizhangLED=P2^0;                        //定義前方右側(cè)紅外探頭端口


sbit M1A=P0^0;                            //定義左側(cè)電機驅(qū)動A端
sbit M1B=P0^1;                            //定義左側(cè)電機驅(qū)動B端

sbit M2A=P0^2;                            //定義右側(cè)電機驅(qū)動A端
sbit M2B=P0^3;                            //定義右側(cè)電機驅(qū)動B端



void tingzhi()
{
   M1A=0;                                   //將M1電機A端初始化為0
   M1B=0;                                   //將M1電機B端初始化為0
   M2A=0;                                   //將M2電機A端初始化為0
   M2B=0;

}

void qianjin()
{
   M1A=1;                                   
   M1B=0;                                   
   M2A=1;                                   
   M2B=0;
}

void houtui()
{
   M1A=0;                                   
   M1B=1;                                   
   M2A=0;                                   
   M2B=1;
}

void zuozhuan()
{


   M1A=1;                                   
   M1B=0;                                   
   M2A=0;                                   
   M2B=1;
}

void youzhuan()
{
   M1A=0;                                   
   M1B=1;                                   
   M2A=1;                                   
   M2B=0;
}

void delay_nus(unsigned int i)  //延時:i>=12 ,i的最小延時單12 us
{
  i=i/10;
  while(--i);
}   
void delay_nms(unsigned int n)  //延時n ms
{
  n=n+1;
  while(--n)  
  delay_nus(900);         //延時 1ms,同時進行補償

}  


void ControlCar(unsigned char ConType)    //定義電機控制子程序
{

  tingzhi();
switch(ConType)                          //判斷用戶設(shè)定電機形式
{
  case 1:  //前進                         //判斷用戶是否選擇形式1
  {
    qianjin();
    break;
  }
  case 2: //后退                          //判斷用戶是否選擇形式2
  {
    houtui();                                //M2電機反轉(zhuǎn)
    break;
  }
  case 3: //左轉(zhuǎn)                          //判斷用戶是否選擇形式3
  {
    zuozhuan();                               //M2電機正轉(zhuǎn)
        break;
  }
  case 4: //右轉(zhuǎn)                          //判斷用戶是否選擇形式4
  {
    youzhuan();                                //M1電機正轉(zhuǎn)
                                          //M2電機反轉(zhuǎn)
        break;
  }
  case 8: //停止                          //判斷用戶是否選擇形式8
  {
    tingzhi();
        break;                                //退出當(dāng)前選擇
  }
}
}
void main()                               //主程序入口
{
  bit RunFlag=0;                          //定義小車運行標(biāo)志位
  //RunShow=0;                              //初始化顯示狀態(tài)

  ControlCar(8);                          //初始化小車運行狀態(tài)
  while(1)                                //程序主循環(huán)
  {
   Start:
   bizhangLED = 0;

   if( LeftIR == 0 && RightIR == 1 )                          //如果前面避障傳感器檢測到障礙物
   {
      ControlCar(8);                       //停止
      delay_nms (300);                                           //停止300MS   防止電機反相電壓沖擊  導(dǎo)致系統(tǒng)復(fù)位
          ControlCar(4);                                           //后退  
           delay_nms (260);        
          goto NextRun;
   }
     if( LeftIR == 1 && RightIR == 0 )                          //如果前面避障傳感器檢測到障礙物
   {
      ControlCar(8);                       //停止
      delay_nms (300);                                           //停止300MS   防止電機反相電壓沖擊  導(dǎo)致系統(tǒng)復(fù)位
          ControlCar(3);                                           //后退  
          delay_nms (260);        
          goto NextRun;
   }

   if( LeftIR == 0 && RightIR == 0 )                            //如果前面避障傳感器檢測到障礙物
   {
      ControlCar(8);                       //停止
      delay_nms (300);                                           //停止300MS   防止電機反相電壓沖擊  導(dǎo)致系統(tǒng)復(fù)位
          ControlCar(2);                                           //后退  
          delay_nms (1000);                                           //后退1500MS  
          ControlCar(3);                                           //
          delay_nms (1800);        
          goto NextRun;
   }

   if( LeftIR == 1 && RightIR == 1 )  
   {
      ControlCar(1);                      //右側(cè)沒有信號時,開始向左轉(zhuǎn)一定的角度
      delay_nms (10);
          goto NextRun;
   }


   goto Start;
   NextRun:
   ControlCar(1);
  }
}

//備注:此例程僅為參考程序,請根據(jù)自己的道路進行最優(yōu)化調(diào)整。

9.ZYJJB09-C智能小車配套例程代碼.7z

32.21 KB, 下載次數(shù): 107, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:250717 發(fā)表于 2017-11-22 22:58 | 只看該作者
能分享全部資料不。。。(☆_☆)。。。#^_^#
回復(fù)

使用道具 舉報

板凳
ID:250717 發(fā)表于 2017-11-22 23:01 | 只看該作者
能分享全部的資料不
回復(fù)

使用道具 舉報

地板
ID:311215 發(fā)表于 2019-1-7 14:24 | 只看該作者
兄弟,求一下電路圖
回復(fù)

使用道具 舉報

5#
ID:519473 發(fā)表于 2019-4-28 13:08 來自手機 | 只看該作者
求資源,大哥
回復(fù)

使用道具 舉報

6#
ID:625943 發(fā)表于 2019-10-21 18:38 來自手機 | 只看該作者
非常感謝分享!
回復(fù)

使用道具 舉報

7#
ID:641629 發(fā)表于 2020-10-8 10:04 | 只看該作者
問題是木有原理圖呀
回復(fù)

使用道具 舉報

8#
ID:250717 發(fā)表于 2024-9-3 23:00 | 只看該作者
怎么走直線啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表