<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于STM32的兩輪平衡小車設計

電子工程技術 ? 來源:電子工程技術 ? 2023-07-25 15:48 ? 次閱讀

學習一種單片機最快的方式莫過于用它實際制作一個作品了,前些天看到有人在玩平衡小車,感覺非常有趣,于是就決定自己動手制作一個基于stm32的兩輪平衡小車。從電路板設計,到程序編寫,一步一步的,希望自己在這個過程中有一定的收獲。

電路設計的基本過程一般是這樣的:需求分析——元件選型——原理圖設計——PCB設計——焊接調試。

需求分析:在這里,主要是確定小車需要哪些模塊、外設或接口。首先,stm32最小系統是必須的,這是小車控制的核心。然后小車的兩個輪子需要兩個H橋驅動和編碼器接口。需要陀螺儀感知小車的姿態(包括傾角,轉向角,角速度等)。

需要一些調試和指示用的外設(蜂鳴器,LED等)。需要電源電路為系統供電。需要電池電壓采集電路來實時采集電池電壓,做低壓報警,防止電池過放。需要下載接口和調試用的串口?;揪褪歉鶕约合胍獙崿F功能,然后確定需要那些部分的電路。

元件選型:為需要的各個部分電路選擇元件,一般來說,主要是選擇何種型號、什么封裝的芯片,對于一些比較特殊的電路,即使是電阻電容這樣常見的無源器件也需要認真選擇,然而平衡小車的電路中并不需要一些高精度或很高速的電路部分,所以,下面主要介紹如何選擇各個電路部分的主要芯片。

1.最小系統:考慮到小車的主控板可以作為今后做四軸或其他更高級的機器人的基礎電 路,所以主控選擇了stm32F405RGT6,這款主控是M3內核的,主頻可以達到168M, 有豐富的外設資源可以使用,性能非常強悍,非常適合以后的開發和拓展。

2.電機驅動:小車的兩個輪子電機需要兩個H橋驅動。驅動的選擇和電機的參數緊密相 關。我選用的電機的正常工作電流360mA,并且考慮到小車在正常情況下基本不會出現賭轉的情況,并且為了盡

量減小PCB板的面積,所以選擇了東芝的電機驅動芯片 TB6612,該芯片有兩個集成的H橋,可以同時驅動兩個電機,每個H橋可以持續輸出1.2A的電流,PWM頻率可以到100kHz,芯片的供電電壓最大可以到15V,適合用3S電池供電,并且芯片封裝很小,節省PCB面積。

3.電源電路:主要考慮輸入電壓、輸出電壓、輸出電流等。小車電池采用3S鋰聚合物電池,放電率25C,以后做四軸還能用。電池的滿電電壓12.6V左右,電路中需要5V和 3.3V的電源,因此需要選擇兩款款芯片將12V電壓降壓到5V,然后再將5V降壓到 3.3V。12V-5V的芯片可以選擇MPS公司DCDC降壓芯片MP2482,該芯片支持最大 5A電流輸出,最大28V電壓輸入,0.8至25V可調電壓輸出,符合需求。5V-3.3V選用常見的AMS1117-3.3。

4.陀螺儀:選用MPU6050模塊,模塊自帶了軟件濾波算法,采用串口對外輸出數據, 在115200波特率的情況下,每秒鐘可以輸出100幀的數據。

0dfb988a-2a0a-11ee-a368-dac502259ad0.jpg

原理圖設計:

1.最小系統:包括stm32f405rgt6,晶振電路,復位電路。R2和R3用于配置啟動方式。C9和C12是單片機內部電源變換部分的濾波電容。最小系統基本都是一樣的,按照常用的電路設計一般沒有錯。那幾個電容式芯片的去耦電容,注意一下,模擬電壓、模擬地和數字電源、數字地之間用磁珠隔離,防止數字電路的高頻噪聲影響到模擬電路的精度。

0e0f6874-2a0a-11ee-a368-dac502259ad0.png

2.電源電路:R22和R23將電池電壓分壓到1.2V,接到單片機內部的ADC引腳,監控電池電壓,防止過放。

0e596938-2a0a-11ee-a368-dac502259ad0.png

3.電機驅動和編碼器電路:基本就是按照芯片datasheet上的參考電路設計的,注意做好電源去耦,因為電機的電壓較高、電流較大,容易通過電源網絡對其它電路產生影響。

0e76ea12-2a0a-11ee-a368-dac502259ad0.png

4.陀螺儀:集成的模塊,沒啥好說的,把引腳連到單片機上就好了,簡單在電源腳上并一個電容做一下電源去耦(不做也無妨,因為模塊內部已經做了)。

0e957342-2a0a-11ee-a368-dac502259ad0.png

5.CAN通信:在小車上并沒有用到CAN通信,但是CAN通信在現在的機器人設計中應用的非常廣泛。并且我們做小車本來就是要學東西的,加上調一下,多學習些知識,何樂而不為呢?

CAN通信用的芯片是飛利浦的TJA1050,這是一個CAN收發器,stm32內部集成了CAN控制器。R4是阻抗匹配的電阻,在整個CAN通信網絡中有且只有兩個節點焊接此電阻,電阻阻值為120ohm?,F在也還沒有深入學習CAN通信相關的知識,在以后調試CAN通信的時候再詳細學習吧。(^.^)

0ea94b06-2a0a-11ee-a368-dac502259ad0.png

6.調試電路和其他的接口:SWD下載接口,USART調試串口,藍牙接口(根據選擇的藍牙模塊不同確定接口不同引腳的用途,比如使能腳、狀態輸入腳等,后面寫藍牙的時候詳細描述)。蜂鳴器和雙色LED燈用于調試和指示。另外又引出了幾個定時器的引腳,可以留作拓展使用。

0ec519e4-2a0a-11ee-a368-dac502259ad0.png

0ee61180-2a0a-11ee-a368-dac502259ad0.png

0f077960-2a0a-11ee-a368-dac502259ad0.png

PCB設計:不詳細說了吧,工程文件在附件里有。注意事項主要有電源去耦(具體做法可以參考我之前關于電源去耦的博文)、線寬控制(大電流的走線要盡量寬)、開關電源的布局布線。

一般來說主要記住三點就好了:一是芯片的SW的信號是電壓高,頻率高的開關信號,會對其他電路產生嚴重的干擾,要盡量遠離敏感的電路。二是反饋網絡是很敏感的網絡,盡量避免受干擾。三是電源的電流較大,注意線寬和過孔的數量、孔徑等,保證有能力通過這么大的電流。注意了這三點,集成的DCDC電路一般沒有問題等。這里貼一下板子正反兩面的3D效果圖

0f1e07d4-2a0a-11ee-a368-dac502259ad0.jpg

0f45f9d8-2a0a-11ee-a368-dac502259ad0.png

焊接調試:也不多說了,平時多練練手,0603 QFP這些封裝的元件就能輕松搞定了。焊接的時候先焊接電源部分,上電測試電源沒有問題的話再焊接其他部分,否則一旦電源有問題,整板全白焊了。下面貼一個焊接調試好了的實物圖。

0f82545a-2a0a-11ee-a368-dac502259ad0.jpg

0fa7c83e-2a0a-11ee-a368-dac502259ad0.jpg

嗯,就先寫這么些吧。上面寫的比較啰嗦,也沒有什么高大上的技術,差不多都是硬件電路設計需要的基礎知識吧。只是希望將自己設計這塊平衡小車電路板的過程比較系統和通俗的介紹一下,能將自己這實踐過程中學到的只是和經驗分享出來,沒怎么接觸過這方面的朋友可以將其當作參考,快速入門。同時希望各位高手和達人能多多指教。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 原理圖
    +關注

    關注

    1278

    文章

    6184

    瀏覽量

    228037
  • pcb
    pcb
    +關注

    關注

    4253

    文章

    22576

    瀏覽量

    388525
  • 電路板
    +關注

    關注

    140

    文章

    4683

    瀏覽量

    93648
  • 平衡小車
    +關注

    關注

    1

    文章

    38

    瀏覽量

    12460

原文標題:不動手DIY一下,永遠不知道兩輪平衡小車硬件設計的門道!

文章出處:【微信號:EngicoolArabic,微信公眾號:電子工程技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    刀俠DIY洞洞板stm32兩輪平衡小車 之 1.物料工具軟件準備

    ` 本帖最后由 幻影刀俠 于 2016-4-5 17:01 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之1.物料工具軟件準備看著發燒友眾籌上
    發表于 03-15 09:56

    刀俠DIY洞洞板stm32兩輪平衡小車 之 2.底盤電池模塊的組裝改裝

    ` 本帖最后由 幻影刀俠 于 2016-4-5 17:00 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之2.底盤電池模塊的組裝改裝準備好所有的物料之后呢,今天對電池、底盤還有其他
    發表于 03-16 13:11

    刀俠DIY洞洞板stm32兩輪平衡小車 之 3.原理圖和模擬走線

    ` 本帖最后由 幻影刀俠 于 2016-4-5 17:02 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之3.原理圖和模擬走線繼續走起,配置一下管腳,畫一下原理圖,然后模擬一下走線
    發表于 03-18 14:45

    刀俠DIY洞洞板stm32兩輪平衡小車 之 4.控制板焊接

    ` 本帖最后由 幻影刀俠 于 2016-4-5 17:03 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之4.控制板焊接開始焊接,本期沒多少說的。按照上一期的走線,一點點焊接就好了
    發表于 03-19 18:13

    刀俠DIY洞洞板stm32兩輪平衡小車 之 5.APP軟件Bluetooth RC Controller解析

    ` 本帖最后由 幻影刀俠 于 2016-4-5 17:05 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之5.APP軟件Bluetooth RC Controller解析本期介紹一
    發表于 03-21 21:29

    stm32兩輪平衡小車速度環

    小車直立環很穩定 加上速度環的p都是可以讓小車靜止不到但是 加上速度環 I后 車就不能靜止車會自己向單方向積分單方向倒#include "pid.h"#include "
    發表于 03-30 17:55

    刀俠DIY洞洞板stm32兩輪平衡小車 之 6.走你APP分析

    ` 本帖最后由 幻影刀俠 于 2016-4-1 07:45 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之6.走你APP分析本期介紹一款蘋果手機藍牙APP軟件“走你”。DFRobo
    發表于 04-01 07:47

    刀俠DIY洞洞板stm32兩輪平衡小車 之 7.mbot分析

    ` 本帖最后由 幻影刀俠 于 2016-4-12 17:33 編輯 刀俠DIY洞洞板stm32兩輪平衡小車之7.mbot分析本期介紹makeblock推出的mbot軟件。這款軟件跨
    發表于 04-12 17:30

    DIY一個基于stm32的智能小車,看看有哪些主要設計方式?

    教你DIY一個基于stm32兩輪平衡小車, 主要有幾個步驟:需求分析——元件選型——原理圖設計——PCB設計——焊接調試。有設計過的壇友可以一起交流,我會逐步分享
    發表于 08-19 09:54

    作品秀~DIY基于stm32兩輪平衡小車(電路篇)

    學習一種單片機最快的方式莫過于用它實際制作一個作品了,前些天看到有人在玩平衡小車,感覺非常有趣,于是就決定自己動手制作一個基于stm32兩輪平衡
    發表于 09-01 14:50

    如何去制作一種基于stm32兩輪平衡小車?求過程

    如何去制作一種基于stm32兩輪平衡小車?基于stm32兩輪
    發表于 07-09 07:47

    stm32兩輪平衡小車項目詳解 精選資料分享

    的,這是第一個而已。項目所需物料清單主控板用到了c8t6、小車底盤(這個硬件是這項目于最貴的物料了),可以用大魚電子、或者平衡小車之家的。由于經費的原因,我買了個帶電機的車輪、加上了
    發表于 08-03 07:56

    怎樣去設計一種基于stm32兩輪平衡小車

    兩輪平衡小車是由哪些模塊組成的?怎樣去設計一種基于stm32兩輪平衡
    發表于 09-28 06:26

    STM32兩輪平衡小車源代碼

    基于STM32兩輪平衡小車源代碼說明。
    發表于 03-17 14:21 ?62次下載

    stm32兩輪平衡小車項目詳解

    的,這是第一個而已。項目所需物料清單主控板用到了c8t6、小車底盤(這個硬件是這項目于最貴的物料了),可以用大魚電子、或者平衡小車之家的。由于經費的原因,我買了兩個帶電機的車輪、加上了亞克力板,勉強搭成
    發表于 01-14 12:26 ?8次下載
    <b class='flag-5'>stm32</b><b class='flag-5'>兩輪</b><b class='flag-5'>平衡</b><b class='flag-5'>小車</b>項目詳解
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>