步驟1:設(shè)置ARDUINO Shield
構(gòu)建和ARDUINO原始屏蔽。
我使用了Adafruit的Shield。 http://www.adafruit.com/products/55
將2 x 8pin和2x 6pin針座連接到外部孔。
將2 x 5mm 2針座的位置連接到繼電器和J1772 Pilot的原型板上,/p》
步驟2:狀態(tài)LEDs
焊接通用陰極RGB LED到原型板和1 x 330歐姆電阻分別用于紅色,綠色和藍(lán)色。
將公共陰極接地。
焊接信號線:
紅色-D5
藍(lán)色-D8
綠色-D13
LED引線(Sparkfun的CC RGB LED)
藍(lán)色-綠色-GND(最長引線)-紅色
步驟3:繼電器驅(qū)動器
2N2222A NPN晶體管連接到R11(330歐姆),然后連接到D8(也連接到LED藍(lán)色),GND和繼電器輸出。
第4步:先導(dǎo)DC/DC轉(zhuǎn)換器
J1772 Pilot需要一個從-12V擺動到+ 12V的1khz信號。 MicroPower Direct的D107E DC DC轉(zhuǎn)換器將5VDC轉(zhuǎn)換為正12V和負(fù)12V。轉(zhuǎn)換器需要最小的消耗,因此在每個輸出到地面之間都要增加一個2.4k電阻和一個1uf電容器。我連接了MPD D107E,使5V和GND引腳與原型板上的中心5V和接地軌對齊
步驟5:試運(yùn)行放大器
用于飛行員的運(yùn)算放大器是LF353,從最后一步開始由DC/DC轉(zhuǎn)換器供電。正+ 12V輸出連接到引腳8,負(fù)-12V連接到引腳4。具有2個100K(R8和R9)電阻的分壓器連接到LF353的+ 5V Gnd和引腳2。引腳3或運(yùn)算放大器連接到Protoshield上的ARDUINO D10。輸出,引腳1連接到1%1k ohm電阻,然后連接到引導(dǎo)輸出。
P6KE16CA雙向TVS二極管也連接到引導(dǎo)輸出,然后
不使用引腳5、6和7。
步驟6:先導(dǎo)電壓測量
充電站和汽車與飛行員進(jìn)行通訊。充電站必須讀取電壓才能正確響應(yīng)。
1。將R5(56k)從5v焊接到Arduino Analog 1(A1)。
2。將R6(100k)從Gnd焊接到Arduino Analog 1(A1)。
3。將R7(200k)從先導(dǎo)輸出焊接到Arduino Analog 1(A1)。
該電路通過提供一個分壓器(R6和R7)將-12V縮小至-12V來工作。 R5提供了一個偏置來使電壓保持正值,而Arduino不容忍模擬輸入上的負(fù)電壓。
步驟7:GFCI
接地故障直通(GFCI)是重要部分充電站。 GFCI通過測量電流輸出與電流輸入之間的差異來工作。如果存在差異,則電路會跳閘。標(biāo)準(zhǔn)GFCI在5mA時(shí)跳閘,但是電動汽車需要一個不太敏感的跳閘點(diǎn)。大多數(shù)商業(yè)EVSE使用20mA。
該電路通過使用CRMagnetics(CR8420-1000-G)的接地故障電流互感器(CT)來工作。發(fā)生故障時(shí),CT會產(chǎn)生較小的電壓。來自CT的小電壓首先在第一級中放大,然后在第二級中與參考電壓進(jìn)行比較。如果放大的CT電壓高于參考電壓,則運(yùn)算放大器會變高,并導(dǎo)致Arduino在Arduino引腳D2上注冊一個中斷。
1。在另一個原型屏蔽板上焊接8針插座。
2。焊接電源線,將引腳4至5v和引腳8接地3。將二極管1N4148焊接到運(yùn)算放大器輸出引腳3和5。
運(yùn)算放大器輸出A
4。 CT線圈的焊接頭引腳。
5。將齊納二極管焊接到插頭。
6。將330歐姆電阻R17焊接到插頭。 (可以更改此電阻器的值以更改GFCI跳變點(diǎn))
7。將R16從CT線圈接頭焊接到Opamp引腳2
8。 R17,以及一個從運(yùn)算放大器引腳2到引腳1上的二極管的0.1uf電容器。運(yùn)算放大器輸出B
9。將R15(20k)焊接到Gnd,將R14(100k)焊接到5V,將電阻連接在一起,然后連接到Opamp引腳6。
10。將Opamp輸出引腳7二極管連接到10K電阻,將Arduino Digital 2(D2)連接到Arduino,將電阻的另一端連接到Gnd。
步驟8:加載EVSE固件
使用Arduino IDE將“ Open EVSE”固件加載到Arduino板上。
步驟9:RGB LCD(可選) )
如果Adruino和2個盾牌不高
根據(jù)adafruit網(wǎng)站上的指南進(jìn)行組裝。..
在Open EVSE代碼中添加LCD代碼。..
#include
#include
#define紅色0x1
#define黃色0x3
#define綠色0x2
#define藍(lán)色0x6t tlapsedTime;
void板上顯示:Update()
{
uint8_t curstate = g_EvseController.GetState();
int i;
if(g_EvseController.StateTransition()){
switch(curstate){
case EVSE_STATE_A://未連接
lcd.setBacklight(GREEN);
lcd.setCursor (0,0);
lcd.print(“ EVSE Ready”);
lcd.setCursor(13,0);
lcd.print((int)g_EvseController.GetCurrentCapacity());
lcd.print(“ A”);
lcd.setCursor(0,1);
lcd.print(“ Not Connected”);
中斷;
case EVSE_STATE_B://已連接/不收費(fèi)
lcd.setBacklight(黃色);
lcd.setCursor(0,0);
lcd.print(“ EVSE Ready”);
lcd.setCursor(13,0);
lcd.print((int)g_EvseController.GetCurrentCapacity());
lcd.print(“ A”);
lcd.setCursor(0,1);
lcd.print(“正在等待EV“);
中斷;
情況EVSE_STATE_C://正在充電
lcd.setBacklight(BLUE);
lcd.setCursor(0,0);
lcd.print(” Charging“ );
lcd.print((int)g_EvseController.GetCurrentCapacity());
lcd.print(“ A”);
break;
case EVSE_STATE_D://需要通風(fēng)口
lcd .setBacklight(RED);
lcd.setCursor(0,0);
lcd.print(“ EVSE Error”);
lcd.setCursor(0,1);
lcd.print( “需要通風(fēng)”);
中斷;
情況EVSE_STATE_DIODE_CHK_FAILED:
lcd.setBacklight(RED);
lcd.setCursor( 0,0);
lcd.print(“ EVSE錯誤”);
lcd.setCursor(0,1);
lcd.print(“ DIODE CHK FAILED”);
中斷;
case EVSE_STATE_GFCI_FAULT:
lcd.setBacklight(RED);
lcd.setCursor(0,0);
lcd.print(“ EVSE Error”);
lcd.setCursor(0,1 );
lcd.print(“ GFCI FAULT”);
break;
}
}
if(curstate == EVSE_STATE_C){
lcd.setCursor(0,1) ;
elapsedTime = now();
如果(hour(elapsedTime)《10){
lcd.print(“ 0”);
}
lcd.print(hour(elapsedTime) );
lcd.print(“:”);
如果(分鐘(經(jīng)過的時(shí)間)《10){
lcd.print(“ 0”);
}
lcd.print(分鐘(elapsedTime));
lcd.print(“:”);
如果(second(elapsedTime)《10){
lcd.print(“ 0”);
}
lcd.print(second(elapsedTime));
lcd.print(“”);
}
}
步驟10:測試
J1772 Pilot是1khz + 12V至-12V方波,電壓定義狀態(tài),占空比定義可用的電流電動汽車EVSE設(shè)置占空比,而EV則增加了來自飛行員地面的電阻以改變電壓。 EVSE讀取電壓并相應(yīng)地更改狀態(tài)。
狀態(tài)先導(dǎo)電壓EV電阻說明
狀態(tài)A 12 N/A未連接
狀態(tài)B 9 2.74k已連接
狀態(tài)C 6882充電
狀態(tài)D3 246需要通風(fēng)狀態(tài)E0不適用
狀態(tài)F -12不適用EVSE錯誤
狀態(tài)A -要測試狀態(tài)A,請打開EVSE。 EVSE應(yīng)該進(jìn)入就緒狀態(tài)。 LED應(yīng)該亮綠色。
狀態(tài)B -要測試狀態(tài)B,請?jiān)贓VSE供電的情況下,將電阻為2.74k Ohms的EV Simulator(或二極管和電阻器)連接起來。 EVSE應(yīng)該進(jìn)入EV已連接-EVSE就緒狀態(tài)。 LED應(yīng)該亮黃色。
狀態(tài)C -要測試狀態(tài)C,在EVSE供電的情況下,連接電阻為882歐姆的EV仿真器(或二極管和電阻器)。 EVSE應(yīng)該進(jìn)入EV已連接-EVSE就緒狀態(tài)。 LED應(yīng)該亮藍(lán)色。
狀態(tài)D-要測試狀態(tài)D,請?jiān)贓VSE供電的情況下,用246歐姆的電阻連接EV Simulator(或二極管和電阻器)。 EVSE應(yīng)該轉(zhuǎn)到所需的錯誤排放口。 LED應(yīng)該亮紅色。
狀態(tài)E -要測試狀態(tài)F,應(yīng)斷開EVSE的電源。 EVSE應(yīng)該關(guān)閉,LED應(yīng)該熄滅。
狀態(tài)F -要測試狀態(tài)F,在EVSE供電的情況下,將電阻為2.74k Ohms的EV仿真器(只是一個電阻器)連接起來。 EVSE應(yīng)該轉(zhuǎn)到錯誤二極管檢查失敗。 LED應(yīng)該亮紅色。
頻率-飛行員的頻率應(yīng)該為1kHz(1000Hz)??山邮艿腏1772公差為980-1020Hz。通過在狀態(tài)C“充電模式”下連接EV仿真器(或二極管和882歐姆電阻)來測試頻率。從飛行員到EVSE地面連接萬用表或示波器。
飛行員占空比-飛行員占空比取決于EVSE的最大電流設(shè)置。通過在狀態(tài)C(充電模式)下連接EV仿真器來測試占空比。將示波器從飛行員連接到EVSE地面。占空比應(yīng)與下圖匹配。
上到51A安培=占空比x 0.6占空比=安培/0.6
51-80A安培=(占空比-64)2.5
占空比最大電流《3》 《3》誤差《3》-7 %Digimatic Com Required
10%6A
20%12A
30%18A 《40》 24%24A 《50》 30A 《60》 36%《70》 42%42A 《80》 %48A
86%55A
88%60A
90%65A 《92》 92%70A
94%75A 《96》 80%
步驟11:高電壓
Arduino EVSE可以從6安培到80安培的任何J1772速率充電。我選擇使用240V 30A J1772電纜以及30A繼電器和L6-30扭鎖插頭。日產(chǎn)Leaf的最大充電速率為16 Amps,因此有足夠的余量。
警告-如果您不合格,請不要使用240V電源。..
1。 L6-30剝?nèi)ゴ蠹s6英寸的外部絕緣層,露出熱線(黑色),中性線/熱線2(白色或紅色)和接地線(綠色)。將每根線剝開并焊接或壓接繼電器的熱線和中性線上的適當(dāng)連接器。 (可選)如果需要為Ardrinos電源供電,請?zhí)砑拥诙M電線。
2。通過去除約6英寸的外部絕緣層(露出4或5根電線)來準(zhǔn)備J1772插頭。如果存在用于接近的第五根導(dǎo)線,只需將其折疊并收縮包裹在其上,這樣它就不會在充電站不需要的任何地方短路。剝?nèi)ゴ蠹s4根電線中的1/2英寸的火線(黑色),中性線/火線2(白色或紅色),地線(綠色)和導(dǎo)向線(我的電纜上為橙色,但有些是藍(lán)色的)。在火線和零線上進(jìn)行繼電器。
3。將所有接地線綁在一起。
4。將J1772電纜的火線和零線穿過電流互感器,然后將電線連接至繼電器。
5。連接電源。注意電源必須是12V輸出,輸入應(yīng)該是通用的(大約90-260V)。
6。將引路線連接到Arduino屏蔽引路輸出。
7。將繼電器線圈連接到屏蔽繼電器輸出。
8。將電源連接到Arduino。
步驟12:充電
在測試其充電時(shí)間之后。。..接通電源,然后再次測試。檢查繼電器,高壓接線是否正確?
插入J1772,您的EV應(yīng)該開始充電。
未來的計(jì)劃。..清理低壓電線,并將Arduino放在適當(dāng)?shù)耐鈿ぶ小?p》
-
充電站
+關(guān)注
關(guān)注
2文章
317瀏覽量
19185 -
Arduino
+關(guān)注
關(guān)注
188文章
6472瀏覽量
187317 -
J1772
+關(guān)注
關(guān)注
0文章
2瀏覽量
2080
發(fā)布評論請先 登錄
相關(guān)推薦
評論