前言
持续更新中!
校内赛打完分到地平线组了,好多新东西,写篇笔记记录。
比赛使用OriginBot车模,车模搭载Ubuntu系统。以后估计主要在Ubuntu虚拟机上工作。现在需要先学习ROS2和FoxGlove。
一些很基础或者很好记的东西就不写了。
常用网址
ROS2
基本原理
存在若干分工不同的结点同时运行,结点之间可以通过话题/服务相互沟通数据。
工作空间
ROS2的工作空间由src, build, install, build, log四个文件夹构成,其中源码在src里,结构是src-若干功能包-若干结点代码。
写完代码之后可通过rosdepc install -i --from-path src --rosdistro foxy -y
自动安装依赖。
之后通过colcon build
编译工作空间。
编译成功后运行source install/local_setup.sh
将自己写好的包添加到环境变量里,就能运行包里的节点了。
当然,也可以运行一次echo "source ~/<workspace_name>/install/local_setup.sh">>~/.bashrc
,这样此工作空间就被添加到.bashrc里了,以后再编译完就能直接运行这个包。
功能包
ros2 pkg create --build-type ament_cmake <package_name>
创建使用C艹的功能包。
ros2 pkg create --build-type ament_python <package_name>
创建使用python的功能包。
以下描述针对Python功能包:
在功能包内的同名文件夹内编写若干结点代码,之后需要在setup.py
里添加结点代码的接口。
setup.py
内部如下所示:
from setuptools import setup
package_name = 'python_test'
setup(
name=package_name,
version='0.0.0',
packages=[package_name],
data_files=[
('share/ament_index/resource_index/packages',
['resource/' + package_name]),
('share/' + package_name, ['package.xml']),
],
install_requires=['setuptools'],
zip_safe=True,
maintainer='darthvictor',
maintainer_email='[email protected]',
description='TODO: Package description',
license='TODO: License declaration',
tests_require=['pytest'],
entry_points={
'console_scripts': [
'test=python_test.test:main',
'pub_test=python_test.pub_test:main',
'sub_test=python_test.sub_test:main',
'client_test=python_test.client_test:main',
'server_test=python_test.server_test:main',
],
},
)
添加接口的形式如'console_scripts'
中所示。
Linux
指令连Wifi
nmcli device wifi rescan # 扫描wifi网络
nmcli device wifi list # 列出找到的wifi网络
wifi_connect "SSID" "PASSWD" # 连接某指定的wifi网络
SSH
ssh <target_username>@<target_ip_address>
可以直接连接到target
的终端。
用rsync <local_file_address> <target_username>@<target_ip_address>:<target_address>
将local_file_address
发送到target
的指定位置。在本机写完代码可以用这个同步到车上。下面是一个使用示例:
rsync -r "/home/darthvictor/test/src/python_test" [email protected]:/root/test/src
FoxGlove
网站里写的足够详细干练了,直接看。
标签:src,name,package,乱写,setup,python,备忘录,地平线,test From: https://www.cnblogs.com/DarthVictor/p/17991826