Allen Bradley 440N-G02028 基于串行通信的多機通信協議可以這樣進行:1.所有從機處于監聽狀態。2.主機先發同步字符(即起始符,這里定為E8H),再發某個標識符(根據信息類別來定義不同值,比如電流值的標識符定義為14H),并將通信狀態轉換為接收狀態(RXD=1)。3.當標識符所定義的從機(比如負責電流數據采集的從機1)監聽到標識符(14H)后,從機轉為發送速據狀態,并將準備好的數據(電流值)和結束字符(這里定為CEH)傳給主機,結束字符傳完,從機通信狀態轉換為監聽狀態。4.主機接收到結束字符后,將數據送往LCD顯示。5.主機發同步字符,發下一個標識符(比如電壓15H)。
所以,數據幀格式可以列為:起始符(E8H)+標識符+數據串+結束符(CEH),所有特定字符的選擇都是為了與數據串中數字的ASCⅡ碼(30H–39H)區分開來。
下面是主機和從機程序流程:
主機采用循環點明的方式查詢從機,被點到名的從機作出應答,將采集到的數據或信號傳給主機,主機將數據送給LCD顯示,再進入下一個循環。串行通信的波特率選用9600,數據格式定義為8位數據位加一位停止位。串口初始化程序如下:
voidinit_usart(void)//串口初始化
{
UCSRB|=0x18;//數據發送允許和接收允許
UBRRL=(fosc/16/(baud+1))%256;//設置波特率寄存器低位字節
UBRRH=(fosc/16/(baud+1))/256;//設置波特率寄存器高位字節
UCSRC=0x86;//8位數據位+1位停止位
}
主機和從機都采用查詢方式接收和發送數據:
voidtransmit(unsignedchardata)//數據發送
{
while(!(UCSRA&(1《 UDR=data;//發送數據
}
unsignedcharreceive(void)//數據接收
{
while(!(UCSRA&(1《 returnUDR;//接收數據
}
本文成功設計了針對一款電動汽車的車載信息采集系統結構,一方面用多個從機采集車載信息解決了車載信息眾多而難于采集的問題;用簡單的串口通信的多機通信原理避免了車身周圍布線繁多的麻煩,另一方面采用液晶顯示車載信息,給用戶提供友好界面的同時,又可以準確實時地掌握汽車狀況。從液晶的數據顯示和數據刷新的效果來看,這種基于串口通信的車載信息采集系統是有很好的應用前景的。
Allen Bradley 440N-G02028
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
Allen Bradley PLC SLC 500 1747 DCM Communication Module
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
20 Amp ITE EE1-H020 Circuit Breaker EE1H020
Sti LCM1 70116-1000 LCM-1 Series Controller
Pepperl + Fuchs KFD2-DWB-1D Speed Limit Alarm
Allen Bradley PLC SLC 500 1746 OB16 Output Module
Allen Bradley PLC SLC 500 1746 OB16 Output Module
Allen Bradley PLC SLC 500 1746 OB16 Output Module
Allen Bradley PLC SLC 500 1746 OB16 Output Module
Allen Bradley PLC SLC 500 1746 OB16 Output Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Square D 9070 TF3350D130 Amp Transformer
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PanelView Plus 1250 2711P-T12C4D1
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
SQUARE D 52045 062 50 WELD CONTROL MODULE
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Allen Bradley PLC SLC 500 1746 IB16 Input Module
Square D QO403L60NF Indoor Load Center 60 amp
Allen Bradley 702L-BOD94 AC Lighting Contactor
Honeywell UDC1000 Micro-Pro Controller DC100L
Dwyer Controls 16050 Temperature Controller
Allen Bradley 22B-E3P0N104 PowerFlex 40 Drive 2 HP
Square D FO2 2510 Manual Starter F02 Open Type
Allen Bradley 1756-DNB / B Devicenet Comm Module
Westinghouse BF84F BF Control Relay
Allen Bradley SLC-500 Interface Converter 1747-PIC
Allen Bradley 1756-DNB / A Devicenet Comm Module
Square D 9002AW14 Foot Switch
Square D 9002AW2 Foot Switch
ABB 3HNM06855-1 Purge Sensor 3HNM 00272-1
Allen-Bradley 1492-CB2G100 10 amp circuit breaker
Berger Lahr TLC532 F Positioning Servo Drive
SEALED Siemens BOS14351 Fusible Bus Plug 30 amp A
Allen Bradley 150-F135NBD SMC-Flex Motor Control
Allen Bradley PLC5 / V40B VME Programmable Control
Allen Bradley PLC 5 1771 IGD TTL Input Module
Allen Bradley PLC 5 1771 IGD TTL Input Module
Allen Bradley PLC 5 1771 IGD TTL Input Module
30 Amp Square D Heavy Duty Safety Switch H 361
Allen Bradley PLC SLC 500 1746 OA8 Output Module
Allen Bradley PLC SLC 500 1746 OA8 Output Module
Allen Bradley PLC SLC 500 1746 OA8 Output Module
Allen Bradley PLC SLC 500 1747 L511 CPU Processor Unit