5.23-ROSARIA下位机使用

前言

  • 基础:下位机配置

前言
使用记录
环境搭建
基础:ssh使用
基础:netcat
基础:secureCRT(多标签ssh)
后续工作

TOC

使用记录

环境搭建

sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev

sudo apt-get install ros-indigo-move-base

配置激光ip地址:192.168.0.4 mask:192.168.0.0 gateway:192.168.0.1

安装其他库,编译文件代码

/RosAria/lms1xx_1_pointcloud

/RosAria/lms1xx_1_laserscan

基础:ssh使用

sudo apt-get install openssh-server openssh-client

ssh [email protected]

key

exit

zs:~ssh−keygen−trsazs: " role="presentation" style="font-size: 100%; display: inline-block; position: relative;">ssh?keygen?trsazs:  scp /home/zs/.ssh/id_rsa.pub [email protected]:~/zs_id_rsa.pub

复制文件,修改文件名

基础:netcat

netcat -l 1234

netcat zsUbuntu 1234

netcat 10.0.126.18 1234

问题:在局域网内不能解析主机名字,只能直接输入IP地址,可能是操作系统配置问题,也可能是路由器的域名解析问题,暂时没有解决

It‘s not completely clear how you are expecting the name to be resolved. You refer to both /etc/hosts and nslookup results, but nslookup doesn‘t use /etc/hosts. Also, are you trying to ping/ssh to the machine you‘re on? or a remote machine? The value added to /etc/hosts by network-manager is only relevant if you‘re trying to connect to the machine you‘re on.

If you‘re expecting the names to be resolved from /etc/hosts, you should check the setting for "hosts" in /etc/nsswitch.conf. On my system, it‘s "files dns" so that /etc/hosts will be checked before dns. If it doesn‘t at least include "files", then /etc/hosts will never be checked.

If you‘re expecting dns to handle the resolution, then make sure that your nameserver configuration is correct. Do you know the correct IP address for the network‘s dns server? And if so, does that match the value for "nameserver" in /etc/resolv.conf? If it does not, then try running "nslookup hostname dnsip", where hostname is the one you‘re looking up and dnsip is the correct IP for the network‘s dns server. Does that work? If it does, then you‘ll need to correct the setting in /etc/resolv.conf, and also figure out why it isn‘t being configured correctly in the first place.

If the correct dns server is unable to resolve the hostname, then there is either a problem with your dhcp client configuration or the network‘s dhcp server and/or dns server.

基础:secureCRT(多标签ssh)

远程桌面VNC协议

sudo aptitude install vnc4server

默认远程桌面工具没搞成

远程环境建立

基本信息

上位机:[email protected] 10.0.126.18 zsUbuntu

下位机:[email protected] 10.0.126.3 p3-whs

确立连接

下位机基础环境搭建

编辑器安装,编译工具

装完系统后一定要每一个步骤都彻底更新!!!

sudo apt-get install pcl

sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev

远程桌面

teamviewer需要走互联网,但是下位机网卡设置有问题,默认走内网,不能连接互联网

程序本机编译及执行的问题

不能连接真机的激光lms_100,原因不明,示例文件也不能正确执行

尝试更换ARIA包的版本

sudo su

ROS远程节点问题

ping 连通性检测

ssh连通性检测

名字解析检测+其他环境变量设置

When a ROS node advertises a topic, it provides a hostname:port combination (a URI) that other nodes will contact when they want to subscribe to that topic. It is important that the hostname that a node provides can be used by all other nodes to contact it. The ROS client libraries use the name that the machine reports to be its hostname. This is the name that is returned by the command hostname.

不能通过名字解析IP地址,原因不明。这种情况需要在启动NODE之前设置ROS_IP环境变量

zs端设置

export ROS_IP=10.0.126.18

p3端设置

export ROS_IP=10.0.126.3

ROS远程节点连通性测试(p3 上开启roscore)

ssh [email protected]

roscore

ROS_MASTER_URI=http://10.0.126.3:11311/

ssh [email protected]

export ROS_MASTER_URI=http://10.0.126.3:11311

rosrun rospy_tutorials listener.py

[email protected]

export ROS_MASTER_URI=http://10.0.126.3:11311

rosrun rospy_tutorials talker.py

运行步骤见附件

后续工作

添加几个move_base响应函数

附件列表

原文地址:https://www.cnblogs.com/lizhensheng/p/11117570.html

时间: 2024-10-15 23:58:19

5.23-ROSARIA下位机使用的相关文章

局域网控制系统-下位机-单片机

1 /*----------------------------------- 2 多功能下位机 3 STC89C52RC 11.0592MHz 4 5 -----------------------------------*/ 6 #include<reg52.h> 7 #include<intrins.h> 8 9 char code huanhang[3]={0x0d,0x0a,0}; // "\r\n" 10 //-----------------普通输

与下位机或设备的通信解析优化的一点功能(续补):动态编译

原文:与下位机或设备的通信解析优化的一点功能(续补):动态编译 继上一篇<与下位机或设备的通信解析优化的一点功能:T4+动态编译>  ,现在已经生成出解析用的类的C#源码了,接下来,就轮到动态编译生成Type了. 在实现上,.net framework和.net core上,有些不同: .Net Framework的: 1 var transfer = ""; //解析后的C#源码字符串 2 3 ICodeCompiler comp = new CSharpCodeProv

与下位机或设备的通信解析优化的一点功能:T4+动态编译

原文:与下位机或设备的通信解析优化的一点功能:T4+动态编译     去年接触的一个项目中,需要通过TCP与设备进行对接的,传的是Modbus协议的数据,然后后台需要可以动态配置协议解析的方式,即寄存器的解析方式,,配置信息有:Key,数据Index,源数据类型,数据库列类型,数据排列方式 一开始使用的方式是,从数据库读取出协议的配置,然后在接收到数据的时候,循环每个配置项根据配置-----解析数据------转换类型----存临时列表,,后来改进了一下,配置项存缓存,,数据库修改的时候,同时更

ROS主题发布订阅控制真实的机器人下位机

先模拟控制小乌龟 新建cmd_node.ccpp文件: #include"ros/ros.h" #include"geometry_msgs/Twist.h" //包含geometry_msgs::Twist消息头文件 #include <stdlib.h> #include<stdlib.h> int main(int argc, char **argv) { ros::init(argc, argv, "cmd_node&quo

下位机单片机c语言发送数据到串口,上位机pc机java语言获取端口数据

环境: Windows7 64b,jdk64b,myeclipse8.5,rxtx开发包,STC,keil,格西烽火,51单片机,rs232USB转串口线. 下位机c代码 #include <reg51.h> #include <string.h> #define INBUF_LEN 7   //数据长度 unsigned char inbuf1[INBUF_LEN]; unsigned char checksum,count3,count=0; bit           rea

MSP430G2333下位机乘法运算需要注意的一个问题

背景: 最近负责为主板管理电源的电源管理模块编写软体,使用的MCU为MSP430G2333.功能上很简单,即通过板子上的硬件拨码设定,或者通过IIC与主板通信,由主板的BIOS决定开机及关机的延时供电时间. 正文: 所有功能均按预期实现,但有一个bug在最后蹦了出来,即在延时关机设定时,明明设定为15.18.48个小时,却每次在9个多小时的时候,电源被执行关闭动作.9个多小时,很有意思的数字.不用深究,问题直接锁定在时间比对函数内. 1 // when the current time less

6.PMAC下位机-下位机编程

PMAC的下位机编程包括三种程序:命令序列程序.运动(Program)程序和PLC程序. PMAC中编写程序,直接在File->new新建文件会打开编辑器,所有文件为PMC后缀. 查看当前程序可以在File->Uplaod Programs查看当前已有的Program程序和PLC程序及他们的编号.状态. 1.命令序列程序 上节讲到,PMAC卡中可以使用手动操作,在命令行设置参数状态.控制电机等,但是它一次只能发送一条命令,那么为了一次性运行多个命令序列,即可在PMC程序中如下编写: i620=

上位机 下位机

上位机是指:人可以直接发出操控命令的计算机,一般是PC,屏幕上显示各种信号变化(液压,水位,温度等).下位机是直接控制设备获取设备状况的的计算机,一般是PLC/单片机之类的.上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备.下位机不时读取设备状态数据(一般模拟量),转化成数字信号反馈给上位机.简言之如此,真实情况千差万别不离其宗.上下位机都需要编程,都有专门的开发系统. 在概念上 控制者和提供服务者是上位机 被控制者和被服务者是下位机 也可以理解为主机和从机的关

串口操作包括 java上位机 嵌入式c下位机

一环境 1.1 Keil uVision4 http://pan.baidu.com/s/1o6A331w 1.2 STC http://pan.baidu.com/s/1jGpCUTC 1.3 Myeclipse 8.5 http://pan.baidu.com/s/1jGABEaM 1.4 需导入的jar包RXTX http://pan.baidu.com/s/1ntwsvRr 首先把rxtxParallel.dll和rxtxSerial.dll复制到jdk目录的bin目录下面 然后把RXT