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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5850|回復: 1
收起左側

旋轉階環形倒立擺方案說明書

[復制鏈接]
ID:288445 發表于 2018-3-6 22:15 | 顯示全部樓層 |閱讀模式
一階環形倒立擺
方案說明書



目錄  
1一硬件選擇方案:  2
1 電機選擇  2
2 電動機驅動模塊  2
3 角度傳感器選擇  2
4 轉速測量傳感器選擇  2
5 顯示輸出方案選擇  3
6 輸入方案選擇  3
二              PID 控制原理介紹  4
1 PID 控制原理 4
2 本系統 PID 控制原理 10
三操作步驟說明  12
1本系統的主要硬件模塊  12
2本系統的主要功能  13
3本系統的功能顯示操作步驟  14
四 倒立擺系統硬件  17
1 倒立擺結構設計  17
2 系統原理框圖  17
3 系統硬件原理圖  18
4 控制模塊  20
5 驅動模塊  22
6 角度測量模塊  23
7 轉速測量模塊  24
8 OLED 顯示模塊  27
9              電源模塊  27
五 倒立擺系統軟件設計流程  29
1主程序流程圖  29
2主程序中主要函數流程說明  31
3按鍵的外部中斷操作流程圖  32
4各定時中斷操作流程圖  34
5串口中斷作用流程圖  35

鏈接:601 創新電子


.硬件選擇方案:


1. 電機選擇


減速電機:減速電機克服了普通直流電機扭矩小的缺點,而且價格較低,通過 PWM 控制 平均電流,較易控制其轉速。

本系統選用的減速電機參數:

37GB-520直流減速電機參數
減速比
額定電壓 v
空載電流 mA
轉速 rpm
扭距 kg.cm
1:30
12
180
330
1.5



步進電機:步進電機的方案小店也試過,用 42 步進電機,在低速保持平衡時 TB6612 驅
動能力不夠。用專用步進電機驅動模塊,可以驅動,但電流非常大。57 步進電機未試。


2. 電動機驅動模塊


采用 TB6560 電機驅動芯片

TB6560 內部集成雙全橋 MOSFET 驅動,輪換效率較高,單路可提供約 1A 的電流,內 置溫度保護芯片,具有過流保護。



3. 角度傳感器選擇


精密導電塑料電位器(目前采用的方案)

精密導電塑料電位器電路簡單,利用 AD 測量出電阻分壓值,即可推算出轉過的角度。 且選擇的處理器 STM32 自帶 8 路 AD,所以符合本系統設計的要求。



光電編碼器(接口已留下) 光電編碼器精度高,數字脈沖輸出,比較穩定。但價格較高。接口留下作為擴展。



4. 轉速測量傳感器選擇


霍爾傳感器。霍爾傳感器是應用霍爾效應的一種磁敏傳感器,用于電機測速,系統中 PID
調節時作為位置環參數。霍爾效應的原理就是在金屬或半導體薄片兩端通電流,并在垂






直于薄片的方向施加磁場,在垂直于電流和磁場方向向上將產生霍爾電壓。


5. 顯示輸出方案選擇


采用 OLED 顯示器:OLED 顯示器顯示分辨率高,小巧易用。


6. 輸入方案選擇


獨立按鍵輸入。在輸入量不多的情況下,獨立按鍵輸入編程簡單,易于實現,是輸 入的首選。本系統中實際用了 6 個獨立按鍵:1個單個按鍵和 1 個五向按鍵。五向按鍵 如圖 1.1 所示:



圖 1.1 五向按鍵實物圖 使用五向按鍵,可以方便的進行 OLED 菜單的上下移動,左右調節參數,按下確認。 串口輸入。串口輸入操作方便,可以同時輸入較多參數,符合本系統設計要求 本系統使用了以上兩種方案,可根據需要選擇





二.   PID 控制原理介紹

1. PID 控制原理

采用理論建模的方法,在實際系統設計時會碰到很多問題。比如本系統中,各機械 連接間的摩擦力,減速電機齒輪的回程差等,這些參數都無法測得。

這種情況是需要控制的對象的參數不能完全的測量,不能得到完整的數學模型時, 需要根據經驗和實踐調試來確定參數。PID 控制技術就是用來測量不被完全掌控的系統 參數的。PID(比例(proportion)、積分(integral)、導數(derivative))通過線性組 合構成控制量,用這一控制量對被控對象進行控制,這樣的控制器稱 PID 控制器。

圖 2.1 PID 控制原理圖

首先必須明確 PID 算法是基于反饋的。一般情況下,這個反饋就是速度傳感器返 回給單片機當前電機的轉速簡單的說,就是用這個反饋跟預設值進行比較,如果轉速偏 大,就減小電機兩端的電壓(電流);相反,則增加電機兩端的電壓(電流)  。




PID 算法時,誤差=輸入預設值-測量反饋值
P,I,D 各自的含義及控制規律:

比例偏差值              ek=輸入預設值-測量反饋值

比例 P:比例項部分其實就是對預設值和反饋值差值的放大倍數。 比例控制是一種最簡單的控制方式。其控制器的輸出與輸入誤差信號成比例關系。當僅 有比例控制時系統輸出存在穩態誤差(Steady-state error)。 舉個例子,假如原來電機兩端的電壓為 U0,比例 P 為0.2,輸入值是 800,而反饋值是

1000,那么輸出到電機兩端的電壓應變為 U0+0.2*(800-1000)。從而達到了調節速度 的目的。顯然比例 P 越大時,電機轉速回歸到輸入值的速度將更快,及調節靈敏度就越 高。從而,加大 P 值,可以減少從非穩態到穩態的時間。但是同時也可能造成電機轉速 在預設值附近振蕩的情形,所以又引入積分 I 解決此問題。


圖 2.2  階躍響應特性曲線 積分(I)控制              

在積分控制中,控制器的輸出與輸入誤差信號的積分成正比關系。對一個自動控制

系統,如果在進入穩態后存在穩態誤差,則稱這個控制系統是有穩態誤差的或簡稱有差 系統(System with Steady-state Error)。為了消除穩態誤差,在控制器中必須引入“積分 項”。積分項對誤差取決于時間的積分,隨著時間的增加,積分項會增大。這樣,即便 誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩態誤差進 一步減小,直到接近于零。 因此,比例+積分(PI)控制器,可以使系統在進入穩態后幾乎無穩態誤差。

積分 I:顧名思義,積分項部分其實就是對預設值和反饋值之間的差值在時間上進行 累加。當差值不是很大時,為了不引起振蕩。可以先讓電機按原轉速繼續運行。當時要





將這個差值用積分項累加。當這個和累加到一定值時,再一次性進行處理。從而避免了

振蕩現象的發生。可見,積分項的調節存在明顯的滯后。而且 I 值越大,滯后效果越明 顯。



圖 2.3  積分作用響應曲線 積分環節主要是用來消除靜差,所謂靜差,就是系統穩定后輸出值和設定值之間的

差值,積分環節實際上就是偏差累計的過程,把累計的誤差加到原有系統上以抵消系統 造成的靜差。

若將比例和積分兩種作用結合起來,就構成 PI 調節器,調節規律為:

PI 調節器的輸出特性曲線如圖 3 所示





微分(D)控制
圖 2.4 PI 調節器的輸出特性曲線





微分 D:微分項部分其實就是求電機轉速的變化率。也就是前后兩次差

值的差。也就是說,微分項是根據差值變化的速率,提前給出一個相應的調節動作。可




見微分項的調節是超前的。并且 D 值越大,超前作用越明顯,在誤差接近零時,抑制誤

差的作用就應該是零。可以在一定程度上緩沖振蕩。比例項的作用僅是放大誤差的幅值, 而增加 “微分項”,能預測誤差變化的趨勢,這樣,具有比例+微分的控制器,就能夠提 前使抑制誤差的控制作用等于零,甚至為負值,從而避免了被控量的嚴重超調。 所以對有較大慣性或滯后的被控對象,比例+(PD)控制器能改善系統在調節過程 中的動態特性

系統偏差信號的變化率 e(t)-e(t-1),具有預見性,能預見偏差變化的趨勢,產生超 前的控制作用,在偏差還沒有形成之前,已被微分調節作用消除,因此可以改善系統的 動態性能。但是微分對噪聲干擾有放大作用,加強微分對系統抗干擾不利。 積分和微 分都不能單獨起作用,必須與比例控制配合。


圖 2.5 微分作用響應曲線              圖 2.6 PD 調節器的階躍響應曲線 總之,比例調節依據“偏差的大小”來動作,它的輸出與輸入偏差的大小成比例。比例調 節及時有力,但有余差。在系統中起著穩定被調參數的作用; 積分調節依據“偏差是否存在”來動作,它的輸出與偏差對時間的積分成比例,只有當 余差消失時,積分才會停止,其作用是消除余差; 微分調節依據“偏差變化速度”來動作,它的輸出與輸入偏差變化的速度成比例,其 效果是阻止被調參數的一切變化,有超前調節的作用,對滯后大的對象有很好的效果。


參數調整一般規則

由各個參數的控制規律可知,比例 P 使反應變快,微分 D 使反應提前,積分 I 使反應滯 后。在一定范圍內,P,D 值越大,調節的效果越好。各個參數的調節原則如下:

PID 調試一般原則
a.              在輸出不振蕩時,增大比例增益 P。
b.              在輸出不振蕩時,減小積分時間常數 Ti。




c.              輸出不振蕩時,增大微分時間常數 Td。

•              PID 其實有點小小的智能,P 是對現在情況的應對,I 是對過去的記憶,D 是對未 來的預測。

•              P 是當下,在 3 個量里權重最大,是基礎,因為畢竟要解決當下問題,要對當下 做出反應。PID 有時可以簡化為 PI 或PD,但是從來沒有見過用 ID 就能控制住 的例子。

•              I 是對過去的記憶,如果過去一段時間的曲線太高,就會自動將曲線整體下移, 反之亦然。至于記憶的時間窗口期有多長,與要調整的量變化速度有關。變化緩 慢的物理量時間窗口要長一些,如溫度;變化迅速的物理量要短一些,比位置。

•              D 是對未來的預測,是對未來趨勢的一種預測。變化迅速的物理量容易引起超調 或震蕩,通過微分量預測上升的速度,從而對輸出量進行適當縮小避免“沖過頭”。 變化緩慢的量又太慢,D 可以適當推動調整速度。



Ziegler-Nichols 方法是基于系統穩定性分析的 PID 整定方法.在設計過程中無需考慮任 何特性要求,整定方法非常簡單,但控制效果卻比較理想.具體整定方法如下:

首先,置 Kd=Ki=0,然后增加比例系數一直到系統開始振蕩(閉環系統的極點在
jω軸上);

再將該比例系數乘以 0.6,其他參數按照以下公式計算:
Kp              =              0.6*Km
Kd              =              Kp*π/4*ω
Ki              =              Kp*ω/π

上式中 Kp 為比例控制參數 Kd 為微分控制參數 Ki 為積分控制參數

Km 為系統開始振蕩時的比例值;
ω為振蕩時的頻率




一般步驟:

確定比例增益 P

•              確定比例增益 P 時,首先去掉 PID 的積分項和微分項,一般是令 Ti=0、Td=0(具 體見 PID 的參數設定說明),使 PID 為純比例調節。輸入設定為系統允許的最大 值的 60%~70%,由 0 逐漸加大比例增益 P,直至系統出現振蕩;再反過來,從此 時的比例增益 P 逐漸減小,直至系統振蕩消失,記錄此時的比例增益 P,設定 PID 的比例增益 P 為當前值的 60%~70%。比例增益 P 調試完成。

•              確定積分時間常數 Ti

比例增益 P 確定后,設定一個較大的積分時間常數 Ti 的初值,然后逐漸減小 Ti, 直至系統出現振蕩,之后在反過來,逐漸加大Ti,直至系統振蕩消失。記錄此時 的 Ti,設定 PID 的積分時間常數 Ti 為當前值的 150%~180%。積分時間常數 Ti 調試完成。

•              定積分時間常數 Td

積分時間常數 Td 一般不用設定,為 0 即可。若要設定,與確定 P 和 Ti 的方法相 同,取不振蕩時的 30%。

•              系統空載、帶載聯調,再對 PID 參數進行微調,直至滿足要求。
PID 參數調節的順口溜

參數整定找最佳, 從小到大順序查。 先是比例后積分, 最后再把微分加。 曲線振蕩很頻繁, 比例度盤要放大。 曲線漂浮繞大彎, 比例度盤往小扳。 曲線偏離回復慢, 積分時間往下降。 曲線波動周期長, 積分時間再加長。 曲線振蕩頻率快, 先把微分降下來。 動差大來波動慢, 微分時間應加長。 理想曲線兩個波, 前高后低四比一。 一看二調多分析, 調節質量不會低。







2. 本系統 PID 控制原理



本系統中用的是霍爾元件測電機的轉速,從而推算出擺臂的位置環(位置 PD 參數);

用角度傳感器測擺桿的角度,作為角度環(角度 PID 參數)。兩組 PID 參數共同決定電 機驅動的 PWM 占空比。定時器 5 中斷負責平衡位置 PID 調節。

void TIM5_IRQHandler(void)              //定時器 5 中斷函數

{

if(TIM5->SR&0X0001)//溢出中斷

{




pid();
setmoto(all_pwm);              //設置 pwm

}

TIM5->SR&=~(1<<0);

}

void pid_c(void)

{

angle0=Get_Adc_Average(2,12);              //讀出角度值

ap_error=target-angle0;
ad_error=angle0-angle1;              //角度微分

if(abs(target-angle0)<300)

{

ai_error=ai_error+target-angle0;              //角度積分
all_pwm=kpa*ap_error+kia*ai_error/100-kda*ad_error;              //耦合后的 pid 調節

}

else              all_pwm=0;
angle1=angle0;              //鎖值
nu++;              //給積分項限制次數,防止無限大

if(nu==200) ai_error=0,nu=0;

}




三.操作步驟說明


1.本系統的主要硬件模塊

本系統的全套裝置如圖3.1所示:

圖3.1 本系統的機械結構及各電路模塊圖 本系統的電路板采用模塊插件式,主要模塊請見圖3.2,包括:

1) 12V4A開關電源
2) 底板;
3) 5V開關電源模塊;
4) TB6612模塊;
5) STM32F103RCT6小系統模塊;
6) OLED模塊;
7) 電機測速模塊(用作位置環參數,固定在機械裝置上)
8) 角度傳感器模塊(用作角度環模塊,固定在機械裝置上)






圖3.2 本系統的主要硬件模塊
圖 3.3 控制電路實物圖



2. OLED 菜單說明

目前 OLED 菜單共有兩頁內容,如圖 3.4 和圖 3.5 所示:




圖 3.4 OLED 第 1 頁菜單內容說明

可以通過 5 向按鍵上下鍵移動當前選擇項,第 1 菜單中通過 5 向按鍵左右鍵增減參數值, 按中間鍵(第 1 頁菜單需要長按 2 秒以上)鎖定保存當前值。

3.本系統的主要功能
如果收到后想看一下倒立擺的功能演示,可以通過“啟/停”及“五向按鍵”進行操作, 當前的功能有 3 個,見圖 3.5








1) start :起擺倒立
圖 3.5 OLED 第 2 頁菜單內容說明




2) roll360 :旋轉一圈
3) (旋轉一圈功能必須在起擺倒立后才能完成)
4) LockAngle:記錄當前擺桿角度位置作為平衡
5) func4:留作擴展用,目前無功能。


3.本系統的操作步驟

因為擺桿運輸不方便,所以正常都是拆下發貨。重新安裝上后,需要校準平衡位置






角度。


校準平衡位置角度操作步驟:
1) 通過按“啟/停”按鍵使能電機停止工作。此時右下顯示OFF狀態;
2) 將擺桿垂直向上置于平衡位置;
3) 通過按“五向按鍵”上下鍵,切換到OLED菜單第2頁,選擇LockAngle選項;
4) 按下“五向按鍵”中間鍵確認。
5) 將擺桿放下,即可進行其他操作。


校準平衡位置角度后,您可以進行下面的操作。 正常操作步驟:

上電后,OLED顯示第1面菜單,為各PID參數值,注意右下的OFF狀態,表示目前電機 驅動模塊TB6612處于禁止工作狀態,需要按下列步驟操作:

2) 上電后電機處于禁止狀態,通過按“啟/停”按鍵(見圖3.3)使能電機驅動使 能。此時右下顯示ON狀態;

3) 通過按“五向按鍵”上下鍵,切換到OLED菜單第2頁,選擇相應功能; 目前的菜單操作功能有兩項:

start:起擺 cycle:(原來標識為roll360):轉圈 此外,起擺直立后,一直有抗擾動功能。

4) 按下“五向按鍵”中間鍵確認。即可執行相應功能。

5) 任何時候想停止電機工作,可按下“啟/停”按鍵 說明:本系統的起擺的思路是讓減速電機正向運動一定時間,形成一定擺角后,再反向 運動一定時間,一個來回便可豎立,進入平衡調節。



void function(void)//倒立擺中擴展功能1(起擺),功能2(擺臂旋轉1圈)實現函數
{…
switch(func)
{
case(1):{

setmoto(-op1);delay_ms(t1);
setmoto(op2);delay_ms(t2);

}
}
}







圖3.6 第2頁菜單修改PID參數

如圖3.6所示,通過五向按鍵修改PID參數后,長按中間鍵2秒以上,第一行會出現鎖 定圖標,表示參數被記錄保存。


圖3.6第2頁菜單修改PID參數 如圖3.6所示,將擺桿垂直向上放置平衡位置,然后通過五向按鍵選擇”LockAngle”


選項,按5向按鍵中間鍵,可以重置平衡位置角度參數。此時第一行會出現鎖定圖標, 表示參數被記錄保存。





四 倒立擺系統硬件

1. 倒立擺結構設計

系統中用的一階旋轉倒立擺機械結構為網上購買,機械結構包括:U 型夾座、支 撐桿、電機、過孔滑環、橫梁、角度傳感器及擺桿組成,如圖 3‐1 所示。



圖 3.1 實物圖

其中,U 型夾座可以將整個系統方便的固定在桌面上。 過孔滑環在電機轉動時起類似電刷的作用,可以有效避免信號線纏繞的情況。 擺桿直接與角度傳感器的軸固定,通過帶動軸的轉動,改變角度傳感器當前的分壓

電壓值。

2. 系統原理框圖

一階旋轉倒立擺系統的原理框圖如圖 3‐2 所示: 控制模塊控制轉速測量模塊及角度測量模塊,得到當前電機的轉動速度及擺桿所處

角度,通過 PID 算法計算出所要進行操作,控制電機驅動模塊驅動電路加、減速,以及 是否反向旋轉。當前的運動狀態及 PID 參數在OLED 上顯示。

系統的啟動停止通過一個獨立按鍵控制,具體 PID 參數的調節,可以通過連接底板 上的 5 向按鍵調節,也可以通過串口調試助手在電腦上輸入參數。












3. 系統硬件原理圖
圖 3.2 倒立擺系統原理框圖





表 3.1 系統資源分配表:

模塊名稱
所用端口
占用中斷
說明
電機測速
(A6,PA7)
定時器 3
兩路計數器,編碼器模式。
接電機電路上兩路霍爾元件脈沖輸出
光電編碼器

(A8,A9) (B6,B7)

備用


驅動模塊
方向控制
A 路:(B4,B15)
B 路:(B12,B13)

(TB6612 只用到 A 路)
使能
A11


PWM
A 路:A3
B 路:B14(未用)
定時器 1
(TB6612 只用到 A 路)
角度傳感器 AD
A2,B0(備用)
查詢方式實現

串口通訊:
B10,B11


啟動/停止
A12
外部中斷 12


五向按鍵
A10
外部中斷 10

A5
外部中斷 5

A0
外部中斷 0

A4
外部中斷 4

A1
外部中斷 1

系統板上測試按鍵
A0

與五向按鍵 A0 重合
OLED 顯示
B8(clk),B9(data)
軟件 IIC 實現
可以用硬件 IIC


定時器 5
正常 PID 調節間隔


定時器 6
旋轉一周 PID 調節間隔




一階環形倒立擺說明文檔淘寶鏈接:601創新電子
圖 3.3              連接底板電路圖




19






本系統涉及的模塊較多,詳細模塊的介紹見下面各節。各模塊間的連接底板的電路如圖

3-3 所示。PCB 板見圖 3-4.

A.頂層視圖              B.底層視圖

圖 3.4 連接底板 PCB 圖 通過連接底板,將系統中各電路模塊連接,保證系統能正常、穩定的運行。


  用導電塑料角位移傳感器的一階倒立擺,只需要接右邊三腳,最左邊 的一個腳接了 STM32 的 AD8,在擴展為二階倒立擺時使用


  用光電編碼器做角度傳感器的一階倒立擺,只需要接右邊四個 腳,最左邊的兩個腳接了 STM32 的 PB6、PB7,在擴展為二階倒立擺時使用




4. 控制模塊

使用 ST 公司的 STM32F103RCT6 作為控制器。







圖 3.5 STM32 單片機最小系統原理圖

A.頂層視圖              B.底層視圖 圖 3.6              STM32 單片機最小系統 PCB 圖







5. 驅動模塊

電機驅動芯片選擇的是東芝半導體公司生產直流電機驅動芯片 TB6612FNG,其結構 為 MOSFET‐H 橋,能承受較大電流,有兩個輸出通道,輸出兩路 PWM 波,可以同時驅 動兩路直流電機。驅動模塊如圖 3.6 所示:

圖 3.7 電機驅動芯片實物圖 TB6612FNG 每個通道輸出最高 1.2A 的連續驅動電流; 啟動峰值電流達 2A/3.2A(連續脈沖/單脈沖); 四種電機控制模式:正轉、反轉、制動、停止;

PWM 支持頻率高達 100KHz; 片內低壓檢測電路和熱停機保護電路; 工作溫度:‐20~85℃;

SSOP24 小型貼片封裝。
TB6612FNG 的引腳說明:
A 控制信號輸入‐‐‐‐‐‐PWMA              VM ‐‐‐‐‐‐電機驅動電壓輸入端

A 電機輸入端 2 ‐‐‐‐‐‐AIN2              VCC ‐‐‐‐‐‐邏輯電平輸入端 A 電機輸入端 1 ‐‐‐‐‐‐AIN1              GND ‐‐‐‐‐‐ 接地 正常工作/待機狀態控制端‐‐‐‐‐‐STBY                            AO1 ‐‐‐‐‐‐‐ A 電機輸出端 1

B 電機輸入端 1‐‐‐‐‐‐BIN1              AO2 ‐‐‐‐‐‐ A 電機輸出端 2
B 電機輸入端 2‐‐‐‐‐‐BIN2              BO2 ‐‐‐‐‐‐ B 電機輸出端 2

B 控制信號輸入端‐‐‐‐‐‐PWMB              BO1 ‐‐‐‐‐‐ B 電機輸出端 1 接地‐‐‐‐‐‐GND              GND ‐‐‐‐‐‐‐ 接地 TB6612FNG 功能表見表 3‐1。







表 3‐1 TB6612FNG 功能表




根據表 3‐1 所示,TB6612FNG 使用時注意其 STBY 引腳應接高電平。 本設計使用的 TB6612FNG 電機驅動模塊原理圖見圖 3‐6:



圖 3‐8              TB6612FNG 電機驅動模塊原理圖



6. 角度測量模塊

本設計選用的角度傳感器是 WDD35D4 角度傳感器。這個傳感器是一個精密可調電 阻,如圖 3‐7 所示。中間抽頭(2 腳)接數模轉換器(ADC),根據 AD 轉換器的值可判 斷當前的角度值。








圖 3.9              WDD35D4 角度傳感器是實物圖與原理圖
WDD35D4 5K 線性 0.1% 導電塑料角位移傳感器的性能參數
■ 電阻值:5K
■ 阻值公差:±15%
■ 獨立線性:1%
■ 電氣轉角:345°±2°
■ 額定功耗:2W ( @70℃ )
■ 溫度系數:400ppm/℃
■ 絕緣電阻≥ 1000MΩ ( 500V.D.C. )
■ 絕緣耐壓:1000V ( AC.RMS )1min
■ 平滑性:±0.10%

通過直角支架將角度傳感器固定在倒立擺橫桿的頂端,轉軸用機米螺絲固定倒立 擺的擺桿。電機轉動帶動擺桿擺動,擺桿帶動角度傳感器軸轉動。滑動變阻器的阻值變 化,通過片上 AD 測得第 2 腳的分壓值,可以推算出當前的角度值。

注意在系統啟動之前,要確定擺桿豎立時,2 腳測得的分壓值,以此作為平衡狀態 的基本參數。系統機械結構固定好后,可以通過編程測試這一值。但本設計中采用通過 按鍵實時確定平衡位置的分壓值,具體方法請見軟件設計部分。

角度傳感器接 STM32 的片上模數轉換器 AD2 引腳。

7. 轉速測量模塊

系統中選用了開關式霍爾傳感器 44E 和磁環作為測量電機轉速的方式。選用的磁 環為 26 極充磁,每一對磁極通過霍爾傳感器時,會產生一個脈沖。磁環測量圖如圖 3‐8 所示。







圖 3.10 多極充磁磁環測量圖

采用了霍爾傳感器來測量磁環轉動時帶來的磁場變化,霍爾傳感器前轉過 1 對磁 極產生一個脈沖。當帶動磁環轉動的減速電機后軸轉動一圈,一個霍爾傳感器上可以產 生 13 個脈沖。而選用的直流減速電機的減速比為 1:30,所以電機前軸轉動一圈,一個 霍爾傳感器上可以產生 13*30=390 個脈沖。圖 3‐9 所示的是增量式輸出的霍爾編碼器 模塊,原理圖如圖 3‐10 所示。


圖 3.11 霍爾測速模塊實物              圖 3.12 霍爾測速模塊原理圖 模塊中采用了兩個相位角相差 90 度的霍爾傳感器來測量磁環轉動時帶來的磁場

變化,能過判斷兩個霍爾傳感器的輸出脈沖的先后關系得到電機轉動的方向。 編碼器輸出 AB 相測速脈沖,輸出方波相位存在 90 度相位差,如圖 3‐11 所示。通

過判斷相位可以確定電機的轉向。給圖中編碼器電源提供 5V 電壓,編碼器 AB 相輸出端
都接有上拉電阻,在電機轉動時,單片機可以直接讀取輸出端的電壓。





圖 3.13 霍爾測速波形

編碼器軟件四倍頻技術:以圖 3.11 為例,常用的測速方法是 A 相或者 B 相的下降 沿進行計數,這樣前軸轉一圈,一個霍爾元件測得的計數值只有 390 個。而使用軟件四 倍頻技術,對霍爾元產生的脈沖采用沿觸發。兩個霍爾元,A 相和 B 相的上升沿和下降 沿個數都進行統計,測得的計數值就有 1560 個(390*4=1560 個)。這項技術可以將 編碼器的精度提高 4 倍,這樣減速電機前軸轉一圈,編碼器的輸出脈沖可達四倍,對測 速精度的提高有很大幫助。



圖 3.14 軟件四倍頻原理


圖 3.15 電機測速模塊接口


AO1,AO2 電機引腳




5V,GND:測速霍爾元件電源和地
Encode1, Encode2:電機后軸電路板上兩路霍爾元件輸出腳,接 STM32 的計數器引腳

8. OLED 顯示模塊

OLED 是有機發光二極管,又稱有機發光半導體。OLED 顯示與液晶顯示的發光原理 不同,具有自發光、厚度薄、廣視角、幾乎無窮高的對比度、較低耗電、極高反應速度 等優點。本系統選用的顯示模塊是 9.6 英寸的 OLED 顯示模塊,點陣為 128*64,足夠顯 示各項相關信息。

顯示模塊的控制信號通信方式為 IIC 總線控制。OLED 顯示模塊實物如圖 3‐13。如圖 所示,該顯示屏模塊只有四個管腳,VCC 管腳是顯示屏的電源正,可以接 3.3V 到 5V 的 電源,GND 管腳是 OLED 顯示屏的電源地,SCL 管腳表示 OLED 的 IIC 時鐘線,SDA 管腳 表示OLED 的 IIC 數據線。OLED 顯示屏可以顯示多種顏色,同時可以顯示數字、字符、 漢字、圖形,功能強大,使用方便。(由于進貨批次不同,您收到的 OLED 可能是單色 的)



圖 3.16 OLED 顯示模塊

9.              電源模塊

本系統是采用 12V4A 的開關電源供電。電路中需要有三種電源電壓:

1)              電機驅動電源,需要 12V 電壓,所以開關電源直接連接到驅動芯片 TB6612 的電機 電源口;

2)              轉速測量模塊中,霍爾元件需要 5V 電壓供電,12V 轉 5V 是采用了一款商用開關電 源降壓模塊





3)              STM32 使用 3.3V 電壓供電,這是將 5V 通過 ASM1117‐3.3 模塊得到。




五. 倒立擺系統軟件設計流程


本系統的控制軟件是在Keil4中用C語言編寫,是基于ST的庫函數編寫而成。程序特點 如圖5.1所示:

圖4.1 程序特點
STM32F103RCT6和ROM中程序外區域作為PID參數的存儲區域,每次上電后會讀入初 始的角度環PID,位置環PD,目標角度值,然后等待按鍵(中斷方式)選擇相應功能。




按下啟停按鍵后,電機驅動芯片 TB6612使能。具體起擺、旋轉一周、確

定平衡位置

1.主程序流程圖

圖 4‐1 主程序流程圖
STM32F103RCT6和ROM中程序外區域作為PID參數的存儲區域,每次上電后會讀入初 始的角度環PID,位置環PD,目標角度值,然后等待按鍵(中斷方式)選擇相應功能。 按下啟停按鍵后,電機驅動芯片TB6612使能。具體起擺、旋轉一周、確定平衡位置
等功能需要通過五向按鍵選擇第二頁的功能并確認后,才具體執行。 系統初始化中,各個中斷賦了不同的優先級:
              啟停按鍵和5向按鍵用到外部中斷(搶占優先級2)
              串口中斷(搶占優先級0)
              定時器3中斷:電機霍爾元件計數(搶占優先級0)
              定時器5中斷:5秒中斷,正常找平衡(優先級1)
              定時器6中斷:轉動一圈功能時用到(優先級1)




2.主程序中主要函數流程說明


圖4‐2 Main函數中調用的function()函數所執行的功能






3.按鍵的外部中斷操作流程圖


圖 4‐3 啟停按鍵中斷流程圖

圖 4‐4              OLED 頁面 1 菜單中五向按鍵按下外部中斷流程圖







圖 4‐5              OLED 頁面 2 菜單中五向按鍵按下外部中斷流程圖






4.各定時中斷操作流程圖

圖 4‐6 定時中斷 5 處理程序流程圖




圖 4‐7 定時中斷 6 處理程序流程圖
注:為了執行旋轉一周功能,不能使用位置環調節,因此關閉位置環調節。






此處只用到角度環測量擺桿角度,控制電機轉動。

5.串口中斷作用流程圖




圖 4‐7 串口中斷處理程序流程圖

注:串口數據協議格式:“kpa kia kda kpv kdv\n",數據間以空格分隔。 接收到數據后用atoi()函數提取數據。 STM32接收到數據如果并未保存,如要保存,須在第1頁菜單內長按5向按鍵中間鍵2秒以 上。




完整的pdf格式文檔51黑下載地址:
倒立擺說明匯總Ver2.5.pdf (3.44 MB, 下載次數: 21)


回復

使用道具 舉報

ID:366035 發表于 2018-7-15 08:52 | 顯示全部樓層
有附帶的算法程序嗎
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 五月综合激情婷婷 | www性色 | 精品国产一级 | 欧美一级在线 | 国产精品国产三级国产aⅴ中文 | 国产精品久久久久久久久久久久久 | 日韩精品在线网站 | 中文字幕欧美日韩 | 国产精品永久久久久 | 中文字幕av在线 | 福利视频日韩 | 91色在线 | 精品欧美一区二区三区免费观看 | 亚洲成人综合社区 | 日韩高清中文字幕 | 欧产日产国产精品99 | 日韩精品一区在线 | 欧美精品在线一区二区三区 | 日本超碰在线 | 色综合成人网 | 亚洲一区二区av | www.国产精 | 国产一区二区三区 | 久久中文视频 | 婷婷激情五月网 | 久久久视 | 久久精品国产v日韩v亚洲 | 久久亚洲免费 | 日韩视频一区二区 | 一区欧美 | 免费的av| 性国产丰满麻豆videosex | 久草在线影 | 国产一区中文字幕 | 欧美黑人一级爽快片淫片高清 | av黄色免费 | 欧美成人一级 | 超碰成人在线观看 | 午夜影院| 色爱综合网 | 日韩欧美一区二区三区 |