因此,我正在研究配备gps模块(NEOBLOX 6M)和盖革计数器(Diy Kit)的遥控车。传感器读取的数据将使用xbee模块显示在c#应用程序上。在我的C#应用程序上,我正在使用一个标签来根据接收到的数据进行更新,但是这里的问题是来自gps模块和geiger计数器的数据都显示在单个标签上,我想分别显示来自不同传感器的数据标签或文本框。
GPS模块:http://wiki.sunfounder.cc/index.php?title=Ublox_NEO-6M_GPS_Module
答案 0 :(得分:0)
您听说过ROS吗?
您的描述不太清楚。因此,我对您的系统设计没有太多了解。
无论所有传感器都连接到arduino还是部分连接到arduino并部分连接到PC。
您可以使用ROS Arduino节点和ros节点读取传感器并使用ROS-time发布。您可以按照以下链接中的方法进行操作
http://wiki.ros.org/rosserial_arduino/Tutorials
#include <ros.h>
#include <std_msgs/String.h>
ros::NodeHandle nh;
std_msgs::String str_msg;
ros::Publisher chatter("chatter", &str_msg);
char hello[13] = "hello world!";
void setup()
{
nh.initNode();
nh.advertise(chatter);
}
void loop()
{
str_msg.data = hello;
chatter.publish( &str_msg );
nh.spinOnce();
delay(1000);
}
您可以将此str_msgs更改为传感器提供的任何msgs类型,例如,giger计数器为double。或sensor_msgs / NavSatFix(在ros中显示gps消息),或者您的位置是nav_msgs / Odometry
只要有读数,就用正确的时间戳发布它们。
将所有信息发布到C#ros节点以进行显示。通常,会有很多数据,因此您不应该使用文本框。相反,您应该能够绘制热图或能量图
https://github.com/siemens/ros-sharp遵循ROS C#界面