有了Wifi間接控制智能小車的經驗,很自然的想到,也可以通過GPRS遠端遙控智能小車,因為從通信原理上看,二者其實沒有什麼本質的不同,都是基于Socket的TCP通信,其控制環節如下:
手機 ===> GPRS(TCP/IP) ===> PC ===> Zigbee(序列槽232/TTL) ===> 智能小車
手機的作業系統為Windows Mobile 6.0,其Socket通信控制程式和PDA上的程式大同小異,相關代碼如下:
private void btnTcpConnect_Click(object sender, EventArgs e)
{
Cursor.Current = Cursors.WaitCursor;
if (btnTcpConnect.Text == "連接配接")
{
if (gprs.TcpConnect(txtIP.Text, int.Parse(txtPort.Text)))
{
btnTcpConnect.Text = "斷開";
picTCPFlag.BackColor = Color.Green;
}
}
else
btnTcpConnect.Text = "連接配接";
picTCPFlag.BackColor = Color.Red;
gprs.TcpDisconnect();
Cursor.Current = Cursors.Default;
}
private void btnForward_Click(object sender, EventArgs e)
gprs.TcpSend("0");
private void btnLeft_Click(object sender, EventArgs e)
gprs.TcpSend("1");
private void btnRight_Click(object sender, EventArgs e)
gprs.TcpSend("2");
private void btnBack_Click(object sender, EventArgs e)
gprs.TcpSend("3");
private void btnStop_Click(object sender, EventArgs e)
gprs.TcpSend("4");
}
編譯運作後的效果圖如下:

運作PC程式,建好Zigbee通道,我們就可以用GPRS來控制智能小車了,不過和Wifi通道相比,GPRS通信要略有延遲。
相關控制視訊如下:
<a href="http://video.sina.com.cn/v/b/40307740-1804832611.html">http://video.sina.com.cn/v/b/40307740-1804832611.html</a>
(1)、小車底盤
(2)、四路直流電機驅動器
<a href="http://item.taobao.com/item.htm?id=7218717808">http://item.taobao.com/item.htm?id=7218717808</a>
(3)、.NET Micro Framework開發闆
注:需要紅牛開發闆固件在 V1.0.0以上