电动机车马达控制系统硬体架构.doc
- 文档编号:2495153
- 上传时间:2022-10-30
- 格式:DOC
- 页数:25
- 大小:7.64MB
电动机车马达控制系统硬体架构.doc
《电动机车马达控制系统硬体架构.doc》由会员分享,可在线阅读,更多相关《电动机车马达控制系统硬体架构.doc(25页珍藏版)》请在冰豆网上搜索。
第二章電動機車馬達控制系統硬體架構
2.0硬體平台概述
我們知道,電動機車馬達控制系統的良窳與硬體設計息息相關,目前市面上有許多運動控制專用IC,因此選擇適當的控制晶片亦相當的重要。
由於馬達控制系統除了需要計算之外,優異的週邊能力亦相當重要,因為唯有如此才能兼顧有效率的控制及節省研發的時間。
為了滿足上述的需求,我們選擇了TI公司所生產的TMS320F243晶片,這是一顆典型的DSP晶片同時搭配了許多馬達控制專用之週邊,價錢亦不昂貴。
當然,一個車控系統其實是相當複雜的,因此還得另外搭配其他數位及類比電路。
在此,我們設計了一個TMS320F243Based的電動機車馬達控制版,接下來將對這個控制版作一詳細之描述。
控制版概觀圖如下所示:
F243BasedEVM
類比及驅動電路
DC-DCConverter
Fig2.0電動機車馬達控制版示意圖
如上圖所示,整個控制版約略區分成三個部分,分別是F243-BasedEVM部分,類比及驅動電路部分,以及DC-DCConverter的部分,接下來我們將對每一個部分的電路,作詳細之描述。
2.1F243-BasedEVM電路設計
CanTranceiver
PowerCircuit
ResetCircuit
JTAGCircuit
LED
Latch-74LS373
Data-Buffer
Data-Buffer
Max232
SRAM128kX8
SRAM128kX8
FPGA
EPM7128SLC-84
TMS320
F243
osc
osc
Fig2.1F243-BasedEVM電路概觀圖
1如上圖這個部分電路的主要特色如下:
一、核心採用TMS320F243(20MIPS)DSP晶片
二、搭配一顆FPGA(MAX7000系列),目前規劃有一個Timer,一個Digital
的I/O,及HallSensor之數位濾波電路,以及記憶體和I/O解碼電路。
此
部分電路有隨修隨改的彈性。
三、DSPUART與PC間之Tranceiver電路。
四、Can-Bus之Tranceiver電路。
五、設計搭配64k的DataRam及ProgramRam,當CPU處於Micro-
Processor模式時,程式於ProgramRam上執行,可以Trace程式碼。
六、CPU內部有8k之FlashMemory,當CPU處於Micro-Computer模式時,
則執行燒錄於FlashMemory之程式。
七、F243及FPGA之腳位皆有外拉,使版子有擴充與修改之彈性。
八、CPU本身有AD,PWM,Capture,DigitalI/O,QEP,SCI(UART),SPI,
CanModule等週邊能力。
九、RealTimeTimer(DS1305)。
2.1.1記憶體電路
由F243的Datasheet得知該顆晶片有8K的Flashmemory,但僅有內建數百個word的DARAM。
由於FlashMemory並不能除錯,因僅在這個EVM板上,我們額外設計了64K的ProgramRam和DataRam,使得程式得以在外部之SRAM上執行。
電路圖如下所示:
Fig2.1.1記憶體電路圖
在記憶體系統中,我們所使用之記憶體為128K*8之SRAM,由於F243乃16bit之單晶片,因此我們需要兩顆SRAM。
在電路中,我們將PS訊號拉至A16,藉此區分程式和資料記憶體。
因為F243在存取程式記憶體時,PS會呈現低電位,如此一來,我們便能將程式記憶體定址在此SRAM的前64kword,將資料記憶體定址在後面的64kword。
Ramoe和Ramwe分別是控制記憶體的讀和寫之腳位,這兩個訊號則是在FPGA中產生。
ramoe<=not((not(ds)ornot(ps))andrwandnot(strb));
ramwe<=not((not(ds)ornot(ps))andnot(we));
1這是Ramoe和Ramwe這二個訊號在FPGA中的Funtion。
1其中ds、ps、strb、we的訊號是f243之控制訊號。
2.1.2Buffer之控制電路
Fig2.1.2Buffer控制電路圖
我們在資料匯流排中加了Buffer(74ALS245)的元件,以增加Fanout,這個元件只要控制其何時需要Enable,同時控制其方向。
一般而言,我們在讀寫週期來時,才讓此BufferEnable,同時決定其方向(視系統做讀取或寫入而定)。
這兩個訊號也是在FPGA中產生,其LogicFunction如下:
bufferen<=not(not(ds)ornot(ps)ornot(io));
bufferdir<=not((not(ds)ornot(ps)ornot(io))andrwandnot(strb));
1其中ds,ps,io,rw,strb是F243之控制訊號。
2.1.3RS232電路
這部分電路是RS232規格之位準轉換電路,主要是在TTL與PC-RS232介面做一電壓位準轉換。
由於此為標準電路,因此原理便不多做說明。
細節請參閱MAX232CHIP之DataSheet。
電路圖如下所示
Fig2.1.3RS232電路圖
2.1.4PoweronReset電路
這部分是按鈕重置電路,同時利用RC電路可以達到PoweronReset的作用,Poweronreset對CPU在mocro-computer的模式下而言是非常重要的。
電路圖如下所示
Fig2.1.4Reset電路圖
2.1.5電源保護電路
這部分是電源保護電路,圖中電感是吸收突波電流,電容可以吸收突波電壓,而二極體則可以防止電源反接,因為二極體會將電壓限制在0.5V左右。
Fig2.1.5電源保護電路圖
2.1.6特殊腳位Pull-high電路
下頁圖中都是特殊腳位,MP/MC是選擇F243之工作模式,我們可以利用J10的jump去調整。
BIO/IOPC1腳當是BIO模式時,CPU可利用此外部訊號做條件
式跳躍。
Ready腳位則是可以做wait-state的延長。
NMI則是外部non-maskable之中斷。
PDINT是一個外部中斷訊號,主要做Power-drive電路保護,如過電流,或過溫等。
這些訊號在電路上是先Pull-high,因此使用者可以依自己需要再加電路上去。
Fig2.1.6特殊腳位電路圖
2.1.7JTAG電路
這部分電路是F243晶片的JTAG電路,這是TI公司所提供之標準電路,用以Trace程式碼之執行,電路圖如下所示:
Fig2.1.7JTAG電路圖
2.1.8CanBusTranceiver電路
這部分是Canbus的Tranceiver電路,此亦為一標準電路。
F243之CanBus為2.0B的版本。
此部分電路為處理器內部CanModule和外部CanBus間之傳送電路。
電路圖如下所示
Fig2.1.8CanBusTranceiver電路圖
2.2FPGA設計說明
在F243BasedEVM版這部分的電路中,FPGA是很重要的一部份電路,這一部份之主要處理的訊號如下:
1輸入訊號:
io,ds,ps,rw,strb,we:
從F243所送出之匯流排的控制訊號
Address_bus(7downto0):
位址匯流排訊號A0~A7。
data_bus(15downto0):
資料匯流排訊號D0~D15。
Ha,Hb,Hc:
馬達Hall-Sensor之輸入訊號
1
輸出訊號:
digitalout(7downto0):
DigitalOutputPort。
ramoe,ramwe:
記憶體讀寫控制訊號。
Haout,Hbout,Hcout:
馬達Hall-Sensor經數位濾波之輸出訊號。
Bufferen,Bufferdir:
Buffer(74ALS245)之控制訊號。
ñMAXTD0,MAXTDI,MAXTCK,MAXTMS:
燒錄接腳。
1FPGA外觀圖
Fig2.2.0FPGA之外觀圖
整個FPGA的內部電路可以區分為以下五個部分:
一、記憶體與Buffer控制電路。
二、IO解碼電路。
三、Timer計數及其控制電路。
四、數位Pulse濾波電路。
五、LED控制暫存器。
2.2.1記憶體與Buffer控制電路
1記憶體的讀取:
當對程式或資料記憶體做讀取的動作,且位址匯流排訊號穩
定時,便enable讀取記憶體之功能。
VHDL之程式如下:
ramoe<=not((not(ds)ornot(ps))andrwandnot(strb));
1記憶體寫入:
當對程式或資料記憶體做寫入的動作,且位址匯流排訊號穩定
時,便enable寫入記憶體之功能。
VHDL之程式如下:
ramwe<=not((not(ds)ornot(ps))andnot(we));
1Buffer致能:
當有對I/O,DataMemory,或ProgramMemory進行讀寫動作
bufferen<=not(not(ds)ornot(ps)ornot(io));
時,便致能Buffer。
VHDL之程式如下:
1Buffer之方向:
當有對I/O,DataMemory,或ProgramMemory進行讀取動作
時,其方向乃Device=>CPU,當有對I/O,DataMemory,或ProgramMemory
進行寫入動作時,其方向乃CPU=>Device。
VHDL程式如下:
bufferdir<=not((not(ds)ornot(ps)ornot(io))andrwandnot(strb));
2.2.2解碼電路
I/OSpaceinFPGA:
由於只有拉A0~A7至FPGA內,因此在FPGA內最多只有256個I/Ospace,在真實應用中,也不太可能需要此多的I/Ospace,所以在此FPGA中,我們僅規劃了8個不同的I/O位址,也就是產生8條致能訊號線,去致能不同的Device。
我們整理如下:
I/Oaddress:
0x0=>ReadtheValueofTimer。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电动 机车 马达 控制系统 硬体 架构
![提示](https://static.bdocx.com/images/bang_tan.gif)