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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 16535|回復: 21
收起左側

STM32簡陋舵機云臺控制系統制作 附源程序

  [復制鏈接]
ID:303544 發表于 2019-7-21 13:34 | 顯示全部樓層 |閱讀模式
1.舵機云臺
   功能實現:STM32F103單片機芯片調整云臺的傾斜角度,使其保持水平
                                                           

3D打印的兩軸云臺模型

3D打印的兩軸云臺模型

3D打印的兩軸云臺模型

2.MPU6050傳感器測量傾斜角度
3.OLED顯示傳感器狀態(三軸角度)
                                                

OLED/MPU6050

OLED/MPU6050


4.使用STM32F103C8T6系統板
                                                  

STM32F103C8T6

STM32F103C8T6

云臺水平狀態(約0度)

5.云臺狀態展示
   

云臺水平狀態(約0度)

云臺水平狀態(約0度)
     

45度角調整(MPU6050為-45度)

45度角調整(MPU6050為-45度)

45度角調整(MPU6050為-45度)

6.主函數如下
  1. #include "stm32f10x.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "ioi2c.h"
  5. #include "MPU6050.h"
  6. #include "pwm_output.h"
  7. #include "oled.h"


  8. int main(void)
  9. {        
  10.         float Pitch,Roll,Yaw;
  11.         
  12.         delay_init();
  13.         IIC_Init();
  14.         NVIC_Configuration();            
  15.   uart_init(9600);                     //串口顯示
  16.         DMP_Init();                           //DMP初始化
  17.   TIM_Init();                           //定時器初始化
  18.   delay_ms(8000);
  19.         OLED_Init();                        //OLED初始化
  20.   OLED_Clear();
  21.         
  22.         delay_ms(10000);
  23.         OLED_Clear();                    //OLED清屏
  24.         
  25. //界面顯示
  26.         OLED_ShowCHinese(16,0,1);
  27.         OLED_ShowCHinese(30,0,2);
  28.         OLED_ShowCHinese(44,0,3);
  29.         OLED_ShowCHinese(58,0,4);
  30.         OLED_ShowCHinese(72,0,5);
  31.         OLED_ShowCHinese(86,0,6);
  32.         OLED_ShowCHinese(100,0,7);
  33.         
  34.         OLED_ShowChar(0,3,'X',13);
  35.         OLED_ShowChar(0,5,'Y',13);
  36.         OLED_ShowChar(0,7,'Z',13);
  37.         
  38.         OLED_ShowChar(14,3,':',13);
  39.         OLED_ShowChar(14,5,':',13);
  40.         OLED_ShowChar(14,7,':',13);
  41.         OLED_ShowChar(56,3,'.',13);
  42.         OLED_ShowChar(56,5,'.',13);
  43.         OLED_ShowChar(56,7,'.',13);
  44.         
  45. //不斷讀取MPU6050數據
  46.         while(1)
  47.         {                           
  48.                 MPU_DMP_GET_DATA(&Pitch,&Roll,&Yaw); //獲取角度值
  49.                
  50.                 if(Pitch<0)
  51.                 {
  52.                         OLED_ShowChar(28,3,'-',13);
  53.                         Pitch=-Pitch;
  54.                         OLED_ShowNum(36,3,(int)Pitch,3,13);          //x軸
  55.                         OLED_ShowNum(62,3,(int)(Pitch*10)%10,1,13);
  56.                         TIM_SetCompare1(TIM3,180+Pitch);
  57.                 }
  58.                 else
  59.                 {
  60.                         OLED_ShowChar(28,3,' ',13);
  61.                         OLED_ShowNum(36,3,Pitch,3,13);                              
  62.                         OLED_ShowNum(62,3,(int)(Pitch*10)%10,1,13);
  63.                         TIM_SetCompare1(TIM3,180-Pitch);
  64.                 }
  65.                
  66.                 if(Roll<0)
  67.                 {
  68.                         OLED_ShowChar(28,5,'-',13);
  69.                         Roll=-Roll;
  70.                         OLED_ShowNum(36,5,(int)Roll,3,13);            //y軸
  71.                         OLED_ShowNum(62,5,(int)(Roll*10)%10,1,13);
  72.                 }
  73.                 else
  74.                 {
  75.                         OLED_ShowChar(28,5,' ',13);
  76.                         OLED_ShowNum(36,5,(int)Roll,3,13);
  77.                         OLED_ShowNum(62,5,(int)(Roll*10)%10,1,13);
  78.                 }
  79.                
  80.                 if(Yaw<0)
  81.                 {
  82.                         OLED_ShowChar(28,7,'-',13);
  83.                         Yaw=-Yaw;
  84.                         OLED_ShowNum(36,7,(int)Yaw,3,13);               //z軸
  85.                         OLED_ShowNum(62,7,(int)(Yaw*10)%10,1,13);
  86.                         TIM_SetCompare4(TIM3,180+Yaw);
  87.                 }
  88.                 else
  89.                 {
  90.                         OLED_ShowChar(28,7,' ',13);
  91.                         OLED_ShowNum(36,7,(int)Yaw,3,13);
  92.                         OLED_ShowNum(62,7,(int)(Yaw*10)%10,1,13);
  93.                         TIM_SetCompare4(TIM3,180-Yaw);
  94.                 }         
  95.         }
  96. }
復制代碼
全部程序51hei下載地址:
舵機云臺.7z (250.03 KB, 下載次數: 526)

評分

參與人數 2黑幣 +62 收起 理由
嘰嘰嘰嘰計 + 12 很給力!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:212343 發表于 2019-8-5 04:33 | 顯示全部樓層
您好,做完了,不顯示呢
回復

使用道具 舉報

ID:308666 發表于 2019-8-5 13:58 | 顯示全部樓層
請問舵機需要驅動嗎
回復

使用道具 舉報

ID:595742 發表于 2019-8-5 19:08 | 顯示全部樓層
感謝分享
回復

使用道具 舉報

ID:484435 發表于 2019-8-5 20:01 | 顯示全部樓層
謝謝大神分享
回復

使用道具 舉報

ID:586422 發表于 2019-8-6 00:05 | 顯示全部樓層
云臺用51單片機可以有效控制嗎??
回復

使用道具 舉報

ID:479909 發表于 2019-8-6 10:56 | 顯示全部樓層
樓主你好,為什么我的OLED不亮 0 0 和你一樣的接法
回復

使用道具 舉報

ID:84982 發表于 2019-8-8 00:40 | 顯示全部樓層
照片的是3D打印機打的嗎?
回復

使用道具 舉報

ID:581789 發表于 2019-8-8 09:16 | 顯示全部樓層
為什么我下載了好幾次,總是解壓的時候顯示找不到壓縮包
回復

使用道具 舉報

ID:258924 發表于 2019-8-8 13:54 | 顯示全部樓層
TIM_SetCompare4(TIM3,180+Yaw)  這個180是怎么算的不太懂   這個不應該是和定時器里面的2000-1比較嗎
回復

使用道具 舉報

ID:482966 發表于 2020-2-8 21:58 | 顯示全部樓層
學習了!感謝樓主分享!
回復

使用道具 舉報

ID:320566 發表于 2020-3-3 19:02 | 顯示全部樓層
感謝分享。參考一下
回復

使用道具 舉報

ID:9469 發表于 2020-4-5 17:53 | 顯示全部樓層
謝謝分享
謝謝分享
回復

使用道具 舉報

ID:712281 發表于 2020-4-10 19:08 | 顯示全部樓層
不好意思,能麻煩樓主發一下接線方式嗎,這個實在看不清楚
回復

使用道具 舉報

ID:742908 發表于 2020-5-2 17:20 | 顯示全部樓層
樓主可以分享一下這些器材都是在哪買的嗎?我打開那個寶都不知道該搜索什么關鍵詞QAQ
回復

使用道具 舉報

ID:648123 發表于 2020-10-4 21:59 | 顯示全部樓層
請問樓主,能不能介紹一下這份代碼所能實現的功能是什么嗎?如果我在云臺安裝個激光筆,那么這份代碼能不能控制激光點按照一定斜率進行直線運動?
回復

使用道具 舉報

ID:897874 發表于 2021-3-29 08:57 | 顯示全部樓層
有云臺的3D打印文件嗎?
回復

使用道具 舉報

ID:830831 發表于 2021-4-10 10:15 | 顯示全部樓層
舵機的信號機理決定 分辨率不高,只能堪用

回復

使用道具 舉報

ID:430492 發表于 2021-4-26 18:29 | 顯示全部樓層
這里可能需要一種控制算法才好,不然可能舵機會不停地來回調整!
回復

使用道具 舉報

ID:854861 發表于 2021-5-24 18:32 | 顯示全部樓層
你好,請問一下你程序里的pb13是什么作用
回復

使用道具 舉報

ID:797581 發表于 2023-11-28 16:37 | 顯示全部樓層
OLED不會亮
回復

使用道具 舉報

ID:1101644 發表于 2023-11-28 21:29 | 顯示全部樓層
很棒,很棒的作品
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色爱区综合 | 国产精品片 | 国产在视频一区二区三区吞精 | 婷婷在线免费 | 99色综合 | 久久成人午夜 | 天天想天天干 | 羞羞午夜 | 精品久久久久久亚洲精品 | 亚洲网在线 | 精品一区二区久久久久久久网站 | 国产yw851.c免费观看网站 | 国产精品久久久久久 | 亚洲高清在线观看 | 国产激情视频网址 | 久热久 | 国产专区在线 | 超碰精品在线 | 韩国电影久久 | 一级欧美日韩 | www.日韩av.com| 天堂网av在线 | 欧州一区二区 | 欧美激情国产日韩精品一区18 | 亚洲影音 | 婷婷丁香在线视频 | 天天干成人网 | 国产免费xxx | 亚洲精品乱码久久久久久按摩观 | 成人黄色a | 精品国产乱码久久久久久图片 | 一级做a爰片久久毛片免费看 | 亚洲免费精品 | 91福利在线观看 | 精品九九九 | www.国产精品 | 久久久久久久一级 | 喷水毛片| 国产精品美女久久久 | 北条麻妃99精品青青久久主播 | 国产精品亚洲第一区在线暖暖韩国 |