久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1040|回復: 1
打印 上一主題 下一主題
收起左側

STM32單片機+Android實現的智能家政機器人設計資料 程序原理圖和文檔

[復制鏈接]
跳轉到指定樓層
樓主
系統實現功能
本次設計為研究探索性課題,旨在為后續的家政機器人產品設計提供一個原型,故本系統僅為智能家政機器人的雛形,并非具有完善功能的機器人。
本系統已實現通過安卓手機進行語音識別,并將語音識別結果發送至機器人,機器人控制器按照接收到的指令驅動舵機完成用戶的命令。機器人可以前后左右的移動,并且機器人攜帶的機械臂可以完成5個自由度的受控運動。上述命令為簡單的用戶命令,最終系統實現能夠完成特定的復雜用戶命令。比如當用戶命令機器人取來某個位置的盒子,機器人會自動運動到該位置抓取盒子,送到用戶手中。
6.2 系統實物圖
下圖為機器人正常啟動之后的效果圖:


int main(void)
{     
u8 reclen=0;
unsigned short int distance=520;
unsigned short int height=750;
unsigned short int weight=512;
Stm32_Clock_Init(9);    //系統時鐘設置
delay_init(72);            //延時初始化
IIC_Init();     //初始化I2C接口
uart_init(72,1000000);     //串口1初始化為1M
LED_Init();                //初始化與LED連接的硬件接口
EXTIX_Init();         //外部中斷初始化
MPU6050_initialize();
HMC5883L_SetUp();
delay_ms(50);
HMC5883L_SetUp();
SetMode(1,0,0);delay_ms(30);
SetMode(2,0,0);delay_ms(30);
SetMode(3,0,0);delay_ms(30);
SetMode(4,0,0);delay_ms(30);
SetMode(5,0,1023);delay_ms(30);
SetMode(6,0,1023);delay_ms(30);
SetMode(7,0,1023);delay_ms(30);
SetMode(8,0,1023);delay_ms(30);
SetMode(9,0,1023);delay_ms(30);  
HC05_Init();     
delay_ms(1000);                                                  
PostureInit();      
while(1)
{
  int reach=0;   
//printf("ANGLE:  angle=%d  \n",jiao);
//delay_ms(500);         
  if(USART2_RX_STA&0X8000)            //接收到一次數據了
  {
    //printf("%c",tt);
     reclen=USART2_RX_STA&0X7FFF;    //得到數據長度
     USART2_RX_BUF[reclen]=0;         //加入結束符
     USART2_RX_STA=0;
     if(tt=='1')                        //前進
     {
      Forward();
     }
     if(tt=='3')                         //后退
     {
      Back();
     }
     if(tt=='0')                         //停止
     {
      LED0=1;LED1=1;
      Stop();
     }
     while(tt=='4')                        //右轉
     {
      USART2_RX_STA=0;
      TurnRight();      
     }
     if(tt=='2')                         //左轉
     {
      TurnLeft();
     }
     if(tt=='5')                          //打開爪子                                          f
     {
      SetMode(9,0,1023);
      delay_ms(30);
      OpenPaw();
      LED0=0;
     }
     if(tt=='6')                          //抓取
     {
      SetMode(9,0,1023);
      delay_ms(30);
      ClosePaw();
     }                              
     while(tt=='8')                           //收回
     {
      USART2_RX_STA=0;
      distance-=10;
      if(distance<=200)distance=200;
      SetMode(7,0,1023);
      delay_ms(30);
      PawGoFar(distance);
      delay_ms(75);
      LED1=0;
     }
     while(tt=='7')                          //伸出
     {
      USART2_RX_STA=0;
      distance+=10;
      if(distance>=520)distance=520;
      SetMode(7,0,1023);
      delay_ms(30);
      PawGoNear(distance);
      delay_ms(75);
      LED0=0;
     }              
     while(tt=='9')            //機器人手臂抬起
     {
      USART2_RX_STA=0;
      height+=10;
      if(height>=750)height=750;
      SetMode(6,0,1023);
      delay_ms(30);
      ArmRaiseUp(height);
      delay_ms(75);
      LED0=0;
     }
     while(tt=='a')            //機器人手臂放下
     {
      USART2_RX_STA=0;
      height-=10;
      if(height<=500)height=500;
      SetMode(6,0,1023);
      delay_ms(30);
      ArmSetDown(height);
      delay_ms(75);
      LED1=0;
     }
     while(tt=='b')                 //手臂右轉
     {
      USART2_RX_STA=0;
      weight-=10;
      if(weight<=20)weight=20;
      SetMode(5,0,1023);
      delay_ms(30);
      ArmLeft(weight);
      delay_ms(75);
     }
     while(tt=='c')                 //手臂左轉
     {
      USART2_RX_STA=0;
      weight+=10;
      if(weight>=1000)weight=1000;
      SetMode(5,0,1023);
      delay_ms(30);
      ArmRight(weight);
      delay_ms(75);
     }
     if(tt=='d')               //取北方1M處物體
     {
      TurnRight();
      reach=0;
      while(!reach)
      {
      USART2_RX_STA=0;
      IICreadBytes(HMC58X3_ADDR,HMC58X3_R_XM,6,hbuffer);
      hx=(((int16_t)hbuffer[0]) << 8) | hbuffer[1];
      hz=(((int16_t)hbuffer[2]) << 8) | hbuffer[3];
      hy=(((int16_t)hbuffer[4]) << 8) | hbuffer[5];
      if(hx==0)
      {
       if(hy & 0x8000)
         angle=270;
       else
         angle=90;
      }
      else
      {   
       if(hy & 0x8000)  
         angle=360-atan2(-hy,hx)*(180/3.141592653);
       else
         angle=atan2(hy,hx)*(180/3.141592653);
      }
      jiao=(int)angle;
      if(jiao==86||jiao==87)
      {
       reach=1;
       Stop();
       delay_ms(1500);
       times=0;sig=0;
       Forward();
       Forward();
       while(sig==0);
        Stop();
       delay_ms(30);
       SetMode(9,0,1023);
       delay_ms(30);
       OpenPaw();
       delay_ms(300);
       SetMode(6,0,1023);
       delay_ms(30);
       ArmSetDown(500);
       delay_ms(1000);
       SetMode(7,0,1023);
       delay_ms(30);
       PawGoNear(520);
       delay_ms(1000);
       SetMode(9,0,1023);
       delay_ms(30);
       ClosePaw();
       delay_ms(500);
       SetMode(6,0,1023);
       delay_ms(30);
       ArmRaiseUp(750);
       delay_ms(1000);
       sig=0;times=0;
       Back();
       while(sig==0);
       Stop();
       tt='0';
      }
      }
     }
     
     while(tt=='e')
     {
      sweep();
      Stop();
      tt='0';
     }
                     
    }                                                                                          
}                                                
}

word文檔和程序原理圖下載: STM32 Android實現的智能家政機器人電路代碼文檔.7z (7.68 MB, 下載次數: 0)

評分

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

查看全部評分

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

使用道具 舉報

沙發
ID:876606 發表于 2025-1-7 13:27 | 只看該作者
NB人物
回復

使用道具 舉報

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

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄色一级免费看 | 伊人久久综合 | 欧美一区二区综合 | 蜜月va乱码一区二区三区 | 青青伊人久久 | 亚洲视频一区 | 日韩av高清在线 | 天天干亚洲 | 精品久久亚洲 | 日本三级在线视频 | 密室大逃脱第六季大神版在线观看 | 日本一级淫片免费啪啪3 | 一区二区三区在线 | 欧 | 国产午夜精品一区二区三区嫩草 | 国产91久久久久蜜臀青青天草二 | 毛片一级片| 97国产成人 | 91中文视频 | 国产欧美一区二区三区国产幕精品 | 国产一区91精品张津瑜 | 亚洲精品在线国产 | 国产高清一区二区 | 亚洲成年人免费网站 | 欧美国产日本一区 | 久久久这里只有17精品 | 色香蕉在线 | 亚洲精品片| 美女一级毛片 | 亚洲第一成人影院 | 天堂中文在线播放 | 在线精品一区 | 午夜精品久久久久久久99黑人 | 久久综合九九 | av网站在线播放 | 午夜影院在线观看版 | 国产精品美女久久久 | 99综合网| 欧美日韩精品久久久免费观看 | 久久久久国产精品午夜一区 | 日韩av成人 | 一区二区在线免费观看 |