999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STC單片機(jī)的兩輪平衡車設(shè)計(jì)

2021-08-26 15:11:03戴慶
河南科技 2021年9期
關(guān)鍵詞:單片機(jī)

戴慶

摘 要:本項(xiàng)目代碼基于C語(yǔ)言開(kāi)發(fā),選用宏晶科技有限公司的8位單片機(jī)STC8A8K64S4A12作為主控制器,采用重力加速度陀螺儀傳感器MPU-6050獲取重力加速度和角度數(shù)據(jù),通過(guò)互補(bǔ)濾波對(duì)獲取的數(shù)據(jù)進(jìn)行數(shù)據(jù)融合從而得到小車姿態(tài)。經(jīng)過(guò)PID算法處理后,系統(tǒng)輸出PWM(脈沖寬度調(diào)制)控制信號(hào)到電機(jī)驅(qū)動(dòng)芯片BTN7971B,以控制小車的兩個(gè)電機(jī)的正反轉(zhuǎn)和轉(zhuǎn)速,使小車保持平衡狀態(tài)。同時(shí),使用旋轉(zhuǎn)編碼器獲取小車的速度信息,通過(guò)PID算法將PWM輸出并加以融合,從而實(shí)現(xiàn)小車的速度與方向控制。

關(guān)鍵詞:STC8A8K64S4A12;角度檢測(cè);PID算法;互補(bǔ)濾波

中圖分類號(hào):TP368.1;TP242 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1003-5168(2021)09-0015-03

Abstract: The code of this project is developed based on C language, the 8-bit single-chip microcomputer STC8A8K64S4A12 from STC MCU Limited is selected as the main controller, and the gravity acceleration gyroscope sensor MPU-6050 is used to obtain the gravity acceleration and angle data, and the obtained data is fused through complementary filtering to obtain the car attitude. After PID algorithm processing, the system outputs PWM (Pulse Width Modulation) control signal to the motor drive chip BTN7971B, in order to control the forward and reverse rotation and speed of the two motors of the trolley, so that the trolley maintains a balanced state. At the same time, the rotary encoder is used to obtain the speed information of the trolley, and the PWM output is combined through the PID algorithm to realize the speed and direction control of the trolley.

Keywords: STC8A8K64S4A12;angle detection;PID algorithm;complementary filtering

近年來(lái),隨著科學(xué)技術(shù)的發(fā)展,兩輪平衡車逐漸進(jìn)入人們的視野,以小米科技有限責(zé)任公司的產(chǎn)品為代表,作為一種短途的交通工具,具有極高的趣味性和便利性。平衡車研究始于日本,高速發(fā)展于美國(guó),國(guó)內(nèi)研究始于中國(guó)科學(xué)技術(shù)大學(xué)、西安交通大學(xué)等科研單位,然后研究成果逐漸被科技公司應(yīng)用于日常生活中,作為短途的交通工具、物品運(yùn)輸載體和智能機(jī)器人等,而這都取決于其獨(dú)特的驅(qū)動(dòng)方式,能夠使產(chǎn)品體積小巧,運(yùn)動(dòng)也更加靈活和便捷,其能夠在狹窄的環(huán)境中運(yùn)行。

兩輪平衡車狀態(tài)不穩(wěn)定,人們需要通過(guò)一些外部的力使其平衡。車輛模型的直立需要不停地調(diào)節(jié)電機(jī)的轉(zhuǎn)動(dòng),使本身穩(wěn)定在一個(gè)狀態(tài);調(diào)節(jié)車輛模型的速度時(shí),人們需要改變車輛模型的傾角,傾倒時(shí),車輛模型需要一個(gè)同方向的加速度來(lái)保持穩(wěn)定,傾角越大,加速度也越大,從而完成速度的控制。本研究涉及傳感器的采集、數(shù)據(jù)的處理、角度的計(jì)算和電機(jī)的控制等內(nèi)容,從兩個(gè)方面闡述了兩輪平衡車設(shè)計(jì),希望能給相關(guān)人員提供參考。

1 硬件系統(tǒng)的組成

小車硬件電路分為主控板和驅(qū)動(dòng)電路版,上面分別集成了各個(gè)模塊,通過(guò)接口和尼龍柱連接,安裝效果如圖1所示。小車的供電可以選擇電池或者超級(jí)電容,超級(jí)電容具有快速充放電的特性,使用超級(jí)電容時(shí),要配備單獨(dú)的穩(wěn)壓模塊將快速下降的電壓穩(wěn)定在某一值。

設(shè)計(jì)車輛模型的電路時(shí),人們需要根據(jù)接口和處理數(shù)據(jù)量選擇合適的單片機(jī),并逐步設(shè)計(jì)其他模塊,形成完整的系統(tǒng)。系統(tǒng)的輸入與輸出包括五部分。一是I2C數(shù)字接口(2路IO模擬I2C數(shù)字接口),用于連接MPU-6050模塊;二是PWM接口,控制車模電機(jī)雙方向運(yùn)行,這里使用的是H橋驅(qū)動(dòng),所以需要4路;三是串行通信接口SCI(UART,即通用異步收發(fā)器),用于程序的下載和調(diào)試以及藍(lán)牙遙控;四是外部中斷,用于編碼器測(cè)速;五是IO接口,連接一些IO設(shè)備,如超聲波、紅外傳感器等。

控制電路劃分為6個(gè)子模塊。一是單片機(jī)最小系統(tǒng),即STC8A8K64S4A12;二是MPU-6050六軸傳感器,獲取小車角度值;三是速度檢測(cè),使用外部編碼器獲取脈沖頻率;四是電機(jī)驅(qū)動(dòng),直流電機(jī)驅(qū)動(dòng)電路;五是電源及其穩(wěn)壓電路;六是設(shè)置與調(diào)試,內(nèi)容包括顯示車模狀態(tài)、快速調(diào)試及程序下載。

2 主要電路模塊設(shè)計(jì)和分析

2.1 電源模塊

使用兩節(jié)18650鋰電池串聯(lián)供電時(shí),人們需要將驅(qū)動(dòng)電路板上安裝電容穩(wěn)壓模塊的接口短接起來(lái),無(wú)須其他的外圍電路,而且更換方便;使用超級(jí)電容供電時(shí),人們需要在驅(qū)動(dòng)板上焊接4個(gè)規(guī)格為2.7 V 60 F 1840的法拉電容,此外還有均壓芯片和大功率MOS(場(chǎng)效應(yīng))管,以防電容偏差和日積月累形成的電壓不均衡問(wèn)題。

2.2 穩(wěn)壓模塊

穩(wěn)壓模塊有超級(jí)電容穩(wěn)壓、3.3 V穩(wěn)壓和5 V穩(wěn)壓。超級(jí)電容穩(wěn)壓采用的是全集成升壓轉(zhuǎn)化器TPS61088,具有2.7~12 V的寬輸入電壓范圍和10 A開(kāi)關(guān)電流能力,并且能夠提供高達(dá)12.6 V的輸出電壓;5 V穩(wěn)壓采用的是線性穩(wěn)壓芯片LM2940-5.0,3.3 V穩(wěn)壓采用的是線性穩(wěn)壓芯片LM2937-3.3,兩款芯片都具有低壓差、損耗小和電路簡(jiǎn)單的優(yōu)點(diǎn)。

使用電池供電時(shí)直接以電池的7.4 V電壓驅(qū)動(dòng)直流電機(jī),5 V和3.3 V穩(wěn)壓后再提供給各個(gè)模塊;使用超級(jí)電容供電時(shí)則需要將TPS61088升壓轉(zhuǎn)換器升壓,以12 V電壓驅(qū)動(dòng)直流電機(jī),再將12 V電壓穩(wěn)壓到5 V和3.3 V提供給各個(gè)模塊。供電電路結(jié)構(gòu)如圖2所示。

2.3 電機(jī)驅(qū)動(dòng)模塊

電機(jī)驅(qū)動(dòng)的基本原理是H橋驅(qū)動(dòng),由于小車有兩組電機(jī),所以系統(tǒng)需要兩路H橋驅(qū)動(dòng)電路。硬件方面,系統(tǒng)采用兩個(gè)MOS芯片BTN7971B來(lái)構(gòu)成一路H橋驅(qū)動(dòng)器,其有著大電流、高驅(qū)動(dòng)的優(yōu)點(diǎn),輸入電壓為5~25 V,最大驅(qū)動(dòng)電流達(dá)68 A;另外,使用SN74LS244DW光耦隔離芯片保護(hù)單片機(jī),以免燒毀。

2.4 六軸傳感器模塊

MPU-6050芯片集成了三軸加速度和三軸陀螺儀,并且可利用自帶的數(shù)字運(yùn)動(dòng)處理器(DMP)硬件加速引擎,通過(guò)主IIC接口,向應(yīng)用端輸出姿態(tài)解算后的數(shù)據(jù);InvenSense公司提供了該模塊運(yùn)動(dòng)處理資料庫(kù),人們能夠非常方便地實(shí)現(xiàn)姿態(tài)解算,獲得角度值,降低了運(yùn)動(dòng)處理運(yùn)算對(duì)單片機(jī)的負(fù)荷,同時(shí)大大降低了開(kāi)發(fā)難度。另外,該模塊具有體積小、自帶溫度傳感器和兼容3.3 V/5.0 V等特點(diǎn)。

2.5 調(diào)試模塊

為了方便調(diào)試,硬件上還增加了按鍵、OLED顯示屏和藍(lán)牙接口;按鍵和OLED顯示屏能夠方便地修改參數(shù),查看小車的狀態(tài)和傳感器獲取的值;藍(lán)牙能夠與上位機(jī)軟件連接,將參數(shù)上傳到計(jì)算機(jī)進(jìn)行實(shí)時(shí)顯示,方便分析與調(diào)試,同時(shí)也能遙控小車。

2.6 軟件設(shè)計(jì)

系統(tǒng)總體軟件設(shè)計(jì)思路如下:首先是各個(gè)模塊的初始化,保證每個(gè)模塊都處在正常的工作狀態(tài),初始化完成后,每10 ms進(jìn)入定時(shí)器中斷程序,通過(guò)IIC通信協(xié)議獲取MPU-6050姿態(tài)檢測(cè)數(shù)據(jù)和電磁傳感器數(shù)據(jù),傳給單片機(jī)處理融合,通過(guò)調(diào)節(jié)PWM輸出來(lái)改變電機(jī)的運(yùn)行狀態(tài),使小車實(shí)現(xiàn)直立前進(jìn)、后退和轉(zhuǎn)彎;將編碼器的A相接STC單片機(jī)的INT0口,B相接任意IO口,通過(guò)判斷觸發(fā)中斷時(shí)B相的高低電平,得到電機(jī)正反轉(zhuǎn),對(duì)觸發(fā)中斷進(jìn)行加減處理,得到電機(jī)速度;當(dāng)小車的傾斜角度過(guò)大時(shí),程序會(huì)將PWM輸出降為0,從而讓電機(jī)停轉(zhuǎn),保護(hù)硬件。

2.7 PID控制算法

在過(guò)程控制中,按偏差的比例(P)、積分(I)和微分(D)進(jìn)行控制的PID控制算法是工程中應(yīng)用最廣泛的自動(dòng)控制算法,具有原理簡(jiǎn)單、穩(wěn)定性好、控制參數(shù)相互獨(dú)立、參數(shù)調(diào)整方便等特點(diǎn)。角度環(huán)是平衡小車最重要的控制閉環(huán),一般使用PD(比例/微分)控制器,具體代碼如下:

void AngleControl(void)

{

float fDelta,fValue;

fDelta = CAR_ANGLE_SET - g_fCarAngle;

fValue = CAR_ANGLE_SPEED_SET - g_fGyroAngleSpeed;

g_fAngleControlOut = fDelta * g_tAnglePID.P + fValue *g_tAnglePID.D;

}

CAR_ANGLE_SET為人們期待的角度值,在頭文件中設(shè)為常數(shù)0;CAR_ANGLE_SPEED_SET為人們期待的角速度值,在頭文件中設(shè)為常數(shù)0。下面進(jìn)行PD控制器計(jì)算,然后賦值給全局變量g_fAngleControlOut。fDelta是角度偏差,f_Value是角速度(陀螺儀)偏差,g_fCarAngle是傳感器測(cè)量的角度,g_fGyroAngleSpeed是傳感器測(cè)得的加速度。

平衡小車速度環(huán)使用速度控制最常用的PI控制器,具體代碼如下:

void SpeedControl(void)

{

float fDelta;

float fP, fI;

g_fCarSpeed = (float)(g_iLeftMotorPulseSigma +

g_iRightMotorPulseSigma ) * 0.5f;

g_iLeftMotorPulseSigma = g_iRightMotorPulseSigma = 0;

g_fCarSpeed = (float)(g_fCarSpeedOld * 0.2f + g_fCarSpeed *0.8f) ;

g_fCarSpeedOld = g_fCarSpeed;

fDelta = CAR_SPEED_SET;

fDelta -= g_fCarSpeed;

fP = fDelta * g_tSpeedPID.P;

fI = fDelta * g_tSpeedPID.I;

g_fCarPosition += fI;

g_fCarPosition += g_fUltraSpeed;

if((int)g_fCarPosition > SPEED_CONTROL_OUT_MAX)

= SPEED_CONTROL_OUT_MAX;

if((int)g_fCarPosition < SPEED_CONTROL_OUT_MIN)

= SPEED_CONTROL_OUT_MIN;

g_fCarPosition += g_fBluetoothSpeed;

g_fSpeedControlOut = fP + g_fCarPosition;

}

CAR_SPEED_SET是設(shè)定速度期望值,然后減去速度采集值,得到速度誤差,賦值給fDelta;之后進(jìn)行速度環(huán)PI控制器運(yùn)算,速度誤差fDelta乘以速度環(huán)P值,速度誤差fDelta乘以速度環(huán)I值再累加起來(lái)。對(duì)積分設(shè)置上限,不然積分一直增大,容易發(fā)生振蕩。最后,速度環(huán)PI控制器計(jì)算結(jié)束,將P值和I值疊加,得到速度環(huán)PWM輸出值,賦值給全局變量g_fSpeedControlOut。

3 結(jié)論

雙輪平衡車系統(tǒng)設(shè)計(jì)采用8位STC8A8K64S4A12單片機(jī)作為控制核心,結(jié)合互補(bǔ)濾波和PID控制算法,實(shí)現(xiàn)了直立和移動(dòng)。系統(tǒng)具有良好的外部擴(kuò)展性,能夠連接OLED顯示屏和藍(lán)牙等外部模塊,實(shí)現(xiàn)實(shí)時(shí)顯示數(shù)據(jù)、方便調(diào)試和遙控的功能。后期產(chǎn)品拓展性及應(yīng)用也較好,例如,可根據(jù)其核心原理,設(shè)計(jì)載人兩輪車或者巡邏機(jī)器人。本次設(shè)計(jì)的不足之處在于沒(méi)有制作外殼和車架,相關(guān)部件直接安裝在印制電路板(PCB)上,外觀和實(shí)用性不佳。另外,本設(shè)計(jì)可以采用模糊控制、神經(jīng)網(wǎng)絡(luò)等先進(jìn)的控制算法,輔以攝像頭實(shí)現(xiàn)自動(dòng)循跡的功能。

參考文獻(xiàn):

[1]林豪,王新雨,徐玥.基于高性能單片機(jī)的智能物流小車研究與設(shè)計(jì)[J].河南科技,2020(5):24-28.

[2]李姿景,張具琴,于俊杰,等.基于單片機(jī)的兩輪平衡車設(shè)計(jì)[J].電子測(cè)量技術(shù),2020(23):1-5.

[3]潘二偉.基于STM32的兩輪自平衡車設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱:黑龍江大學(xué),2018:16.

[4]袁瑞豪,王一豪,孫振涵.基于K66單片機(jī)的恩智浦智能小車制作[J].無(wú)線互聯(lián)科技,2019(11):122-124.

[5]林楓,蔡延光.雙輪自平衡車的雙閉環(huán)式PID控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2017(6):73.

猜你喜歡
單片機(jī)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機(jī)在仿真中要注意的幾點(diǎn)問(wèn)題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機(jī)的三維LED點(diǎn)陣設(shè)計(jì)
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個(gè)全新PIC單片機(jī)系列
基于Proteus的單片機(jī)控制系統(tǒng)的仿真設(shè)計(jì)
主站蜘蛛池模板: 国产91丝袜在线播放动漫 | 狠狠色丁香婷婷综合| 在线日本国产成人免费的| 久久国产精品夜色| 精品自窥自偷在线看| 香蕉99国内自产自拍视频| 欧美激情视频在线观看一区| 99久久国产综合精品女同| 欧美成人综合视频| 91精品在线视频观看| 国产在线观看精品| 九九久久精品免费观看| 看看一级毛片| 国产成人午夜福利免费无码r| 亚洲人在线| 亚洲视频四区| 71pao成人国产永久免费视频| 亚洲日韩高清在线亚洲专区| 亚洲Aⅴ无码专区在线观看q| 国产成人一二三| 国产精品 欧美激情 在线播放| 亚洲视频三级| 日韩欧美亚洲国产成人综合| 亚洲成人网在线播放| 日本久久网站| 成人欧美在线观看| 88av在线| 午夜福利亚洲精品| 国产一级一级毛片永久| 亚洲国产成熟视频在线多多| 国产黄在线免费观看| 日韩精品欧美国产在线| 三区在线视频| 免费在线成人网| 欧美激情二区三区| 国产成本人片免费a∨短片| 亚洲免费毛片| 国产福利免费在线观看| 国产成人精品视频一区视频二区| 欧美精品伊人久久| 漂亮人妻被中出中文字幕久久| 久久成人免费| 香蕉99国内自产自拍视频| 日本在线免费网站| 国产在线精品人成导航| 亚洲天堂网视频| 亚洲高清中文字幕在线看不卡| 一本大道无码日韩精品影视| 国产91av在线| 久久久久久久久亚洲精品| 亚洲最黄视频| 午夜福利免费视频| 粉嫩国产白浆在线观看| 在线毛片免费| 亚洲天堂日韩在线| 狠狠亚洲五月天| 日本尹人综合香蕉在线观看| 亚洲天堂网在线播放| 喷潮白浆直流在线播放| www.youjizz.com久久| 最新无码专区超级碰碰碰| 欧美日本在线| 亚洲无码高清一区| 伊人久久久久久久久久| 国产精品 欧美激情 在线播放| 夜夜操狠狠操| 国产综合精品日本亚洲777| 国产精品密蕾丝视频| 青青国产成人免费精品视频| 亚洲美女久久| 成人在线综合| 91在线播放国产| 毛片久久久| 爆乳熟妇一区二区三区| 91在线视频福利| 中文字幕资源站| 人妻精品久久久无码区色视| 四虎永久免费地址在线网站| 毛片在线区| 国产乱论视频| 国产一级二级在线观看| 在线观看免费人成视频色快速|