论文部分内容阅读
摘 要:针对宠物的多动性、活动范围广和地形复杂,导致普通市面上简单的定位项圈难以准确找到宠物狗的问题,我们设计了一款基于GPRS网络的新型宠物项圈,不仅可以准确定位,還可以辅助宠物狗自己找到回家的路。
关键词:移动通信;GPRS网络;单片机
1 硬件设计
1.1 总体设计原理
总体硬件设计组成框图如图1所示。这是一种由单片机控制的宠物丢失召回项圈,基于GPRS网络通信技术,选择stm32f103c8t6作为主控制芯片。当宠物狗走失,主人手机通过GPRS接收项圈发出的信息监视宠物狗的GPS位置信息,当主人察觉其宠物狗确实走失,可通过手机按下一键回家功能。此时项圈就会进入辅助回家状态,以宠物狗为圆心,在其家的方向30度圆心角的扇形区域为工作状态,其余330度区域为空闲状态,当宠物狗的头部朝向家的方向(即在上述30度区域内),此信息由GPS数据、三轴陀螺仪数据、三轴加速度传感器数据,以及电子罗盘数据共同提供给芯片,此时扬声器就会发出主人事先录好的声音,宠物狗听到主人熟悉的声音就会跟随声音朝此方向走,而朝向其余330度区域时扬声器无任何反应,芯片通过实时建立家的方向最终正确引导宠物狗安全回家。
1.2 位置
由一块GPS电路板提供宠物位置坐标,由一块电子罗盘MAG3110和加速度传感器提供方向,由陀螺仪提供姿态。从而准确定位小狗的位置,其中传感器采用MAG3110传感器,这是一种功率消耗极低的小型数字式3D磁传感器,采用I2C接口,具备良好的动态范围,即使所处环境中干扰的磁场量很高,也能够正常工作。MAG3110磁传感器的工作原理就是测量PCB板中元件产生的磁场与地磁场的和,即局部磁场的分量。使用这种方法测出来的局部的磁场量最高可达十个数量级的高斯,输出数据的速率可以稳定在85Hz左右;将磁传感器与三轴加速度传感器的数据进行叠加,能够得到准确度极高的罗盘信息,此信息不同于方向信息。在使用电子罗盘和三轴加速度传感器进行测量的基础上,加上三轴陀螺仪的数据,可以弥补测量的不足。通过三轴加速度传感器和三轴陀螺仪的功能叠加,可以构建一个六轴的传感器模型,这种传感器模型可以作为运动传感器使用,其检测范围基本涵盖所有运动状态参数。物体的运动包括三轴的位移和三轴的转动,这些参数可以组成一个完整的运动轨迹。在此基础之上结合电子罗盘的应用既可以检测到物体的实际运动轨迹,又能够校准物体的位置信息,最终用这种方式来完成宠物狗移动轨迹的跟随,由此可以得到一个完整的轨迹。
1.3 通信
在准确定位宠物狗位置和追踪宠物狗运动轨迹后,将其位置轨迹信息通过通信模板传到手机终端,通信模块主要应用GPRS无线分组交换技术实现无线通信功能,这种与以往不同的业务主要应用于无线网络数据传输,它的前身是GSM通信。GPRS运用的分组交换技术有着强大的优势,原因在于使用这种业务时每个信道可以为多个用户共同享用,并且在同一时间内每位用户又能够享用多个信道,相比于传统方式这样就提高了信道的使用率。GPRS许可用户在两端组别跳跃下进行数据的传输,这种方法通过用户使用的流量对其进行缴费,用户不使用的时候既不会掉线也不会收取任何费用,用户可以随时在线,这种业务在提高工作效率的同时也降低了使用费用。使用GPRS通信透明化,传输效率高,适用范围广,对于一般个人用户来说有着较高的开发前景。通信模块主要建立在AGPRS定位服务系统,利用GPS提供的定位信息以及手机基站提供的信息实现快速、精准的定位功能,同时通过使用GPRS网络实现通信,这样实现的距离更远。
1.4 报警
一个功放电路并且连接3瓦4欧姆的扬声器提供语言外放,并且含有TF(TransFlash)卡槽,可插入有宠物主人录音的TF卡;由锂电池提供电力,并且配备太阳能充电板,可在电池没电时进行充电。
2 软件设计
本项目以stm32c8t6为核心芯片,使用C语言编程。stm32c8t6芯片使用ARM内核,工频可达到72MHZ,有连接到APB总线的外设,以及增强型的IO端口。两个12位ADC可提供模数转换功能。三个16位通用定时器可用于定时和计数功能。还包括用于通信的I2C接口,USART接口,USB接口等等,stm32c8t6芯片供电电压为2.0至3.6V。并且为了达到功率消耗更低,芯片采用省电的模式。C语言运行速度快,功能强大,并且C语言具有语言简短、灵活多变、多种运算符、数据类型丰富,没有严格的语法限制,具有现代语言的结构,编程自由度大等优点。并且使用这种语言进行编程得到的程序的可移植性更高,在今后的项目技术迭代中更加便利。
在主控制芯片与通信模块之间,采用异步串行通信的通信协议。GPS、陀螺仪、电子罗盘、加速度计等外部传感器用串口与stm32收发数据,stm32通过GPIO口的分时复用功能实时获取传感器数据。通过单片机内部软件滤波以及算法分析将传感器数据转化为实时信息,如位置信息、方位、姿态等,紧接着通过通信模块发送回用户端,并在Android软件上显示信息。
GPRS通信底层的驱动部分包括:IO口初始化、串口初始化、AT指令操作、串口中断函数。
GPRS通信主程序主要步骤:①TCP/IP连接流程的控制(即AT指令控制):检测模块串口工作,检查是否插卡,检查网络注册情况,附着网络,设置PDP参数,激活网络,连接TCPIP服务器;②数据处理控制:通过控制GPRS数据的传输,利用中断的方式得到信息,将GPRS数据包含于此信息中再次进行发送;③检测是否超时:进行两次数据发送状态检测,第一次检验数据发送是否成功,如果数据发送不成功,则使TCP/IP的连接进行断开操作,而后再次连接,第二次再检验GPRS数据发送是否成功,如果数据发送还是不成功则可将其复位,然后再次连接。
通过以上操作能够实现以GPRS通信技术为基础的用户与项圈之间的通信。
3 结语
本项目的研究重点是定位、姿态获取、运动轨迹追踪、无线通信以及GPRS无线分组交换技术的应用,采用此种方案设计出的宠物狗丢失状态判定与召回项圈,可以有效地解决宠物狗主人丢失爱犬后及时找回的问题。
参考文献:
[1]何平.基于Zig Bee技术的定位研究与应用[D]南京:南京邮电大学,2012.
[2]周峰.基于Android能手机平台的GPS开发[J]大众科技,2012,14(157):26,3132.
项目:大学生创新创业训练项目(项目编号:S202010361112)
作者简介:戴慧慧(1999— ),女,汉族,安徽人,在读本科生,研究方向:通信工程;杨俊(2000— ),男,安徽人,在读本科生,研究方向:电气及其自动化;李瑞金(1983— ),男,安徽人,博士在读,研究方向:检测自动化装置。
关键词:移动通信;GPRS网络;单片机
1 硬件设计
1.1 总体设计原理
总体硬件设计组成框图如图1所示。这是一种由单片机控制的宠物丢失召回项圈,基于GPRS网络通信技术,选择stm32f103c8t6作为主控制芯片。当宠物狗走失,主人手机通过GPRS接收项圈发出的信息监视宠物狗的GPS位置信息,当主人察觉其宠物狗确实走失,可通过手机按下一键回家功能。此时项圈就会进入辅助回家状态,以宠物狗为圆心,在其家的方向30度圆心角的扇形区域为工作状态,其余330度区域为空闲状态,当宠物狗的头部朝向家的方向(即在上述30度区域内),此信息由GPS数据、三轴陀螺仪数据、三轴加速度传感器数据,以及电子罗盘数据共同提供给芯片,此时扬声器就会发出主人事先录好的声音,宠物狗听到主人熟悉的声音就会跟随声音朝此方向走,而朝向其余330度区域时扬声器无任何反应,芯片通过实时建立家的方向最终正确引导宠物狗安全回家。
1.2 位置
由一块GPS电路板提供宠物位置坐标,由一块电子罗盘MAG3110和加速度传感器提供方向,由陀螺仪提供姿态。从而准确定位小狗的位置,其中传感器采用MAG3110传感器,这是一种功率消耗极低的小型数字式3D磁传感器,采用I2C接口,具备良好的动态范围,即使所处环境中干扰的磁场量很高,也能够正常工作。MAG3110磁传感器的工作原理就是测量PCB板中元件产生的磁场与地磁场的和,即局部磁场的分量。使用这种方法测出来的局部的磁场量最高可达十个数量级的高斯,输出数据的速率可以稳定在85Hz左右;将磁传感器与三轴加速度传感器的数据进行叠加,能够得到准确度极高的罗盘信息,此信息不同于方向信息。在使用电子罗盘和三轴加速度传感器进行测量的基础上,加上三轴陀螺仪的数据,可以弥补测量的不足。通过三轴加速度传感器和三轴陀螺仪的功能叠加,可以构建一个六轴的传感器模型,这种传感器模型可以作为运动传感器使用,其检测范围基本涵盖所有运动状态参数。物体的运动包括三轴的位移和三轴的转动,这些参数可以组成一个完整的运动轨迹。在此基础之上结合电子罗盘的应用既可以检测到物体的实际运动轨迹,又能够校准物体的位置信息,最终用这种方式来完成宠物狗移动轨迹的跟随,由此可以得到一个完整的轨迹。
1.3 通信
在准确定位宠物狗位置和追踪宠物狗运动轨迹后,将其位置轨迹信息通过通信模板传到手机终端,通信模块主要应用GPRS无线分组交换技术实现无线通信功能,这种与以往不同的业务主要应用于无线网络数据传输,它的前身是GSM通信。GPRS运用的分组交换技术有着强大的优势,原因在于使用这种业务时每个信道可以为多个用户共同享用,并且在同一时间内每位用户又能够享用多个信道,相比于传统方式这样就提高了信道的使用率。GPRS许可用户在两端组别跳跃下进行数据的传输,这种方法通过用户使用的流量对其进行缴费,用户不使用的时候既不会掉线也不会收取任何费用,用户可以随时在线,这种业务在提高工作效率的同时也降低了使用费用。使用GPRS通信透明化,传输效率高,适用范围广,对于一般个人用户来说有着较高的开发前景。通信模块主要建立在AGPRS定位服务系统,利用GPS提供的定位信息以及手机基站提供的信息实现快速、精准的定位功能,同时通过使用GPRS网络实现通信,这样实现的距离更远。
1.4 报警
一个功放电路并且连接3瓦4欧姆的扬声器提供语言外放,并且含有TF(TransFlash)卡槽,可插入有宠物主人录音的TF卡;由锂电池提供电力,并且配备太阳能充电板,可在电池没电时进行充电。
2 软件设计
本项目以stm32c8t6为核心芯片,使用C语言编程。stm32c8t6芯片使用ARM内核,工频可达到72MHZ,有连接到APB总线的外设,以及增强型的IO端口。两个12位ADC可提供模数转换功能。三个16位通用定时器可用于定时和计数功能。还包括用于通信的I2C接口,USART接口,USB接口等等,stm32c8t6芯片供电电压为2.0至3.6V。并且为了达到功率消耗更低,芯片采用省电的模式。C语言运行速度快,功能强大,并且C语言具有语言简短、灵活多变、多种运算符、数据类型丰富,没有严格的语法限制,具有现代语言的结构,编程自由度大等优点。并且使用这种语言进行编程得到的程序的可移植性更高,在今后的项目技术迭代中更加便利。
在主控制芯片与通信模块之间,采用异步串行通信的通信协议。GPS、陀螺仪、电子罗盘、加速度计等外部传感器用串口与stm32收发数据,stm32通过GPIO口的分时复用功能实时获取传感器数据。通过单片机内部软件滤波以及算法分析将传感器数据转化为实时信息,如位置信息、方位、姿态等,紧接着通过通信模块发送回用户端,并在Android软件上显示信息。
GPRS通信底层的驱动部分包括:IO口初始化、串口初始化、AT指令操作、串口中断函数。
GPRS通信主程序主要步骤:①TCP/IP连接流程的控制(即AT指令控制):检测模块串口工作,检查是否插卡,检查网络注册情况,附着网络,设置PDP参数,激活网络,连接TCPIP服务器;②数据处理控制:通过控制GPRS数据的传输,利用中断的方式得到信息,将GPRS数据包含于此信息中再次进行发送;③检测是否超时:进行两次数据发送状态检测,第一次检验数据发送是否成功,如果数据发送不成功,则使TCP/IP的连接进行断开操作,而后再次连接,第二次再检验GPRS数据发送是否成功,如果数据发送还是不成功则可将其复位,然后再次连接。
通过以上操作能够实现以GPRS通信技术为基础的用户与项圈之间的通信。
3 结语
本项目的研究重点是定位、姿态获取、运动轨迹追踪、无线通信以及GPRS无线分组交换技术的应用,采用此种方案设计出的宠物狗丢失状态判定与召回项圈,可以有效地解决宠物狗主人丢失爱犬后及时找回的问题。
参考文献:
[1]何平.基于Zig Bee技术的定位研究与应用[D]南京:南京邮电大学,2012.
[2]周峰.基于Android能手机平台的GPS开发[J]大众科技,2012,14(157):26,3132.
项目:大学生创新创业训练项目(项目编号:S202010361112)
作者简介:戴慧慧(1999— ),女,汉族,安徽人,在读本科生,研究方向:通信工程;杨俊(2000— ),男,安徽人,在读本科生,研究方向:电气及其自动化;李瑞金(1983— ),男,安徽人,博士在读,研究方向:检测自动化装置。