基于H橋控制的移動機器人系統(tǒng)方案
int sendstring(char *addr,int port,char *sendchar){
struct sockaddr_in s_addr;//定義sockaddr_in結(jié)構(gòu)體類型保存socket信息
int sock;
int addr_len;
int len,i;
if ((sock=socket(AF_INET, SOCK_DGRAM, 0))==-1) {//創(chuàng)建socket
perror(“no socket”);
exit(errno);
}
else
printf(“create socket.nr”);
s_addr.sin_family=AF_INET;//TCP/IP地址族
if (port)
s_addr.sin_port=htons(port);//設(shè)置端口號
else
s_addr.sin_port=htons(10001);
if (*addr)
s_addr.sin_addr.s_addr=inet_addr(addr);//設(shè)置IP
else {
printf(“Send a message must have a receiver!n”);
exit(0);
}
addr_len=sizeof(s_addr);//IP地址長度
len=-1;//判是否發(fā)送成功標(biāo)志
for (i=0;i4;i++) {//發(fā)送
if(len0)len=sendto(sock,sendchar, strlen(sendchar), 0,(struct sockaddr *) s_addr, addr_len);
else {printf(“send success!”);return 0;}
}
printf(“send error!”);
return 0;
}
系統(tǒng)通過MINI2440驅(qū)動并控制攝像頭,通過串口控制底層的單片機,驅(qū)動無線網(wǎng)卡并連接,運行服務(wù)端,提供UI界面。編譯完成后的Openwrt效果圖如圖5所示。
圖5 編譯完成的OpenWrt效果圖
結(jié)語
本系統(tǒng)選用的OpenWrt操作系統(tǒng),該系統(tǒng)適合移動機器人的設(shè)計要求,系統(tǒng)提供的軟件包簡化了系統(tǒng)開發(fā)流程,提高了開發(fā)效率。經(jīng)過實際調(diào)試運行,系統(tǒng)完全可以達到設(shè)計要求,可以用于探測險情、圖像采集、目標(biāo)定位、無線通信等領(lǐng)域。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
tcp/ip相關(guān)文章:tcp/ip是什么
評論