尹序臻,吳明煌,陳方斯,林佳萍
(廈門理工學(xué)院電氣工程與自動化學(xué)院,福建 廈門 361024)
隨著電子技術(shù)的快速發(fā)展,智能手機、平板電腦等一些電子產(chǎn)品在不斷地更新?lián)Q代,但是,相應(yīng)電子產(chǎn)品的電池電量有限,各種電子產(chǎn)品有線充電接頭不兼容又給人們的使用帶來了不便。無線充電具有使用方便、造型美觀等優(yōu)點,因而受到人們廣泛的關(guān)注,但是市面上現(xiàn)有的無線充電產(chǎn)品主要給單個便攜式電子設(shè)備進行充電。相對于市面上的無線充電產(chǎn)品,本設(shè)計可實現(xiàn)對多臺手機同時充電,避免了凌亂充電線的困擾;同時充電有效區(qū)域更大,讓手機充電擺放位置不受限制;此外本設(shè)計具有嵌入桌面的功能,方便且美觀。兼容性決定手機無線充電技術(shù)的發(fā)展前景,Qi協(xié)議無線充電標(biāo)準(zhǔn)旨在保證不同品牌間的兼容性,相配套的接收端使得無線充電不再受手機型號限制[1]。
系統(tǒng)整體硬件結(jié)構(gòu)如圖1所示。該裝置主要由51單片機、開關(guān)電源、應(yīng)變式壓力傳感器、電流傳感器和LED背光燈條組成。
圖1 系統(tǒng)硬件結(jié)構(gòu)
本設(shè)計的整體思路為:將接入的220V交流電壓通過變電器變壓整流輸出12V直流電壓為系統(tǒng)進行供電,各模塊間通過51單片機進行協(xié)調(diào)控制。
本設(shè)計具有以下3大功能:
⑴實現(xiàn)對4部手機進行無線充電:文章所提出的方法可根據(jù)需求擴展到更多手機的無線充電。
⑵識別手機并執(zhí)行充電操作:移開或電池充滿情況下自動進入待機狀態(tài),從而降低功耗。
⑶實現(xiàn)過充、過流保護并顯示充電狀態(tài):當(dāng)手機充滿后,關(guān)閉充電器的充電電路實現(xiàn)保護;如果用戶誤把金屬放置在充電面板上或手機電池?fù)p壞,關(guān)閉充電電路并發(fā)出警報;手機的充電狀態(tài)有相應(yīng)的指示燈閃爍提示用戶。
目前,利用電磁感應(yīng)原理實現(xiàn)電能的無線傳輸主要分為3類:感應(yīng)耦合方式、電磁諧振方式和微波輻射方式[2]。本設(shè)計采用感應(yīng)耦合方式的電磁感應(yīng)原理,由電源管理模塊將220 V交流電通過變電器降壓整流輸出12 V的直流電用于驅(qū)動各模塊,使用MOS管對半橋逆變電路控制關(guān)斷,同時提高信號功率[3]。
無線充電發(fā)射端由5 V直流電壓供電,由51單片機產(chǎn)生PWM控制信號控制逆變電路的 MOS管的導(dǎo)通和截止,驅(qū)動芯片
TPS28225內(nèi)置14 ns的自適應(yīng)死區(qū)時間,使用逆變電路使得上下2個橋臂的MOS管不能同時導(dǎo)通。通過功率驅(qū)動電路將功率放大后傳送到高頻全橋逆變模塊,然后驅(qū)動發(fā)射線圈陣列。接收端接收電能后通過整流、濾波和電壓調(diào)節(jié)向負(fù)載端供電。基本流程如圖2。
圖2 充電模塊基本流程
在手機識別方面是基于壓力檢測機制。本設(shè)計采用壓力傳感器YTC-133定時掃描的方式檢測重量變化,通過定時判斷重量變化差值判斷負(fù)載是否存在以及是否有新的手機存在,相對于使用負(fù)載檢測技術(shù)[4],這種控制方法更簡單,且功耗更低。YTC-133采用16位的讀取儲存方式,單片機發(fā)送信號,YTC-133將檢測的數(shù)據(jù)通過自身的AD模數(shù)轉(zhuǎn)換生成16位2進制數(shù)字量傳給單片機。充電器面板上內(nèi)置壓力傳感器,若有物體放在充電器面板上時,壓力傳感器產(chǎn)生信號,單片機檢測到信號后進行判斷,當(dāng)質(zhì)量大于150 g時輸出PWM到發(fā)射電路,進入充電模式。啟動4個發(fā)射電路,利用這個原理我們可以讓無線充電器不用時刻保持在工作狀態(tài),從而達到節(jié)能減耗的目的。
圖3 負(fù)載檢測流程
為了實現(xiàn)過充、過流保護,我們采用電流傳感器HTC-LTS。充電過程中單片機通過電流傳感器實時監(jiān)控電流變化。
當(dāng)4個發(fā)射電路啟動時通過電流傳感器掃描線圈以確定手機放置位置,即確定相對應(yīng)發(fā)射電路電流是否大于設(shè)定的閾值(1.2 A),根據(jù)手機位置信息保留對應(yīng)的發(fā)射電路,給手機供電。當(dāng)手機充滿,電流傳感器檢測到發(fā)射電路電流減小,即發(fā)射電路電流小于設(shè)定閾值(1.2 A),則單片機關(guān)閉發(fā)射電路,停止供電進入待機模式。在過流保護方面,我們通過設(shè)定一個安全電流上限值,當(dāng)充電電流超過安全上限(1.5 A),則停止充電。在充電過程中我們采用LED背光燈條顯示充電狀態(tài),共有以下狀態(tài):
⑴ 進行電路檢測時4個藍色呼吸燈點亮。
⑵ 檢測到充電線路時將當(dāng)前線路的紅色呼吸燈點亮,熄滅所有藍色呼吸燈。
⑶ 當(dāng)電流充滿時,點亮當(dāng)前線路的藍色呼吸燈。
這里通過一個按鈕控制綠色背光燈條是否工作,可根據(jù)用戶喜好進行選擇。
軟件設(shè)計如下圖4所示,當(dāng)壓力傳感器檢測到物體后,51單片機啟動所有發(fā)射電路。電流傳感器采集發(fā)射端電流值,首先判斷電流值是否超出安全上限,如果超過則代表手機損壞或誤放金屬類物體,單片機關(guān)閉所有發(fā)射電路。然后判斷電流值是否低于設(shè)定閾值,如果低于設(shè)定閾值則代表手機已經(jīng)充滿或是由于其他充電位的干擾而產(chǎn)生的干擾電流,單片機關(guān)閉相對應(yīng)的發(fā)射電路。具體的程序見附件。
圖4 軟件流程
相對于市面上的無線充電產(chǎn)品,本設(shè)計可實現(xiàn)對多臺手機同時充電的功能,讓用戶再也不用被凌亂的充電線所困擾。充電有效區(qū)域更大,讓手機充電擺放位置不受限制。相配套的接收端使得無線充電不再受手機型號限制。此外,本裝置設(shè)計具有嵌入桌面的功能,方便且美觀。
附件
壓力傳感程序
#include <reg52.h>
#include <intrins.h>
//函數(shù)或者變量聲明
void Delay_ms(unsigned int n);
void Get_Weight();
unsigned long HX711_Read(void);
sbit HX711_DOUT=P2^1;
sbit HX711_SCK=P2^0;
unsigned long HX711_Buffer = 0;
unsigned long Weight_Maopi = 0;
long Weight_Shiwu = 0;
unsigned char flag = 0;
bit Flag_ERROR = 0;
sbit error= P1^0;
#define GapValue 400
void main()
{
Delay_ms(1000); //延時1s,等待
傳感器穩(wěn)定
Weight_Maopi = HX711_Read();
//稱初始重量
while(1)
{
Get_Weight(); //稱重
if(Flag_ERROR == 1)
{
error=0;
}
else
{
error=1;
}
}
}
void Get_Weight()
{
Weight_Shiwu = HX711_Read();
Weight_Shiwu = Weight_Shiwu -
Weight_Maopi; //獲取凈重
if(Weight_Shiwu > 0)
{
Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/GapValue);
//計算實物的實際重量
if(Weight_Shiwu > 150)
//超重報警 MX5 170g
{
Flag_ERROR = 1;
}
else
{
Flag_ERROR = 0;
}
}
else
{
Weight_Shiwu = 0;
}
}
unsigned long HX711_Read(void)
//增益128
{
unsigned long count;
unsigned char i;
HX711_SCK=0;
count=0;
while(HX711_DOUT);
for(i=0;i<24;i++)
{
HX711_SCK=1;
count=count<<1;
HX711_SCK=0;
if(HX711_DOUT)
count++;
}
HX711_SCK=1;
count=count^0x800000;
//第25個脈沖下降沿來時,轉(zhuǎn)換數(shù)據(jù)
HX711_SCK=0;
return(count);
}
void Delay_ms(unsigned int n)
//12M 1ms
{
unsigned int i,j;
for(i=0;i<n;i++)
for(j=0;j<123;j++);
}