Initial commit
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
import rospy
|
||||
from pynput import keyboard
|
||||
from threading import Thread
|
||||
from nav_msgs.msg import Odometry
|
||||
|
||||
class Rebpublic:
|
||||
def __init__(self):
|
||||
self.is_pub = True
|
||||
self.lidar_odom1_pub = rospy.Publisher("/m2/gpsOdom1", Odometry, queue_size=1)
|
||||
|
||||
def on_press(self, key):
|
||||
try:
|
||||
if key.char == "q":
|
||||
self.is_pub = not self.is_pub
|
||||
print(self.is_pub)
|
||||
except:
|
||||
print("error")
|
||||
|
||||
def odom_callback(self, data):
|
||||
if self.is_pub:
|
||||
self.lidar_odom1_pub.publish(data)
|
||||
print("publish", rospy.get_time())
|
||||
else:
|
||||
print("not publish", rospy.get_time())
|
||||
|
||||
def key_listen(self):
|
||||
with keyboard.Listener(on_press=self.on_press) as listener:
|
||||
listener.join()
|
||||
|
||||
def listen(self):
|
||||
rospy.Subscriber("/m2/gpsOdom", Odometry, self.odom_callback, queue_size=1)
|
||||
rospy.spin()
|
||||
|
||||
if __name__ == "__main__":
|
||||
rospy.init_node("republic", anonymous=True)
|
||||
rebpublic = Rebpublic()
|
||||
thread_key_listern = Thread(target=rebpublic.key_listen, args=())
|
||||
thread_key_listern.start()
|
||||
rebpublic.listen()
|
||||
@@ -0,0 +1,201 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
# 星网宇达组合导航配置
|
||||
# ntrip差分帐号配置
|
||||
# 输出配置
|
||||
# 杆臂配置
|
||||
# 航向补偿配置
|
||||
# ......
|
||||
import serial
|
||||
import time
|
||||
|
||||
imu_serial = serial.Serial("/dev/ttyS0", 115200)
|
||||
|
||||
# 恢复出厂配置
|
||||
factory_str = "$cmd,factory,reset*ff"
|
||||
imu_serial.write(factory_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# 配置gpfpd协议透传 50HZ
|
||||
gpfpd_str = "$cmd,output,com0,gpfpd,0.02*ff"
|
||||
imu_serial.write(gpfpd_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 配置gphpd协议透传 5Hz
|
||||
gphpd_str = "$cmd,output,com0,gphpd,0.2*ff"
|
||||
imu_serial.write(gphpd_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 配置gtimu输出 50HZ
|
||||
gpimu_str = "$cmd,output,com0,gtimu,0.02*ff"
|
||||
imu_serial.write(gpimu_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 配置千寻查分账号
|
||||
# 设置组合导航ip地址 根据路由器网络来配置
|
||||
local_ip_str = "$cmd,set,localip,192,168,8,122*ff"
|
||||
imu_serial.write(local_ip_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 设置子网掩码
|
||||
local_mask_str = "$cmd,set,localmask,255,255,255,0*ff"
|
||||
imu_serial.write(local_mask_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 设置网关地址
|
||||
local_gate_str = "$cmd,set,localgate,192,168,8,1*ff"
|
||||
imu_serial.write(local_gate_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 设置千寻账号网络服务器及端口
|
||||
netipport_str = "$cmd,set,netipport,120,253,226,97,8002*ff"
|
||||
# netipport_str = "$cmd,set,netipport,rtk,ntrip,qxwz,com,8002*ff"
|
||||
imu_serial.write(netipport_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 设置千寻账号用户名和密码 user和password换成自己的账号和密码
|
||||
cors_account_str = "$cmd,set,netuser,cvmh5553:ap367r6um*ff"
|
||||
imu_serial.write(cors_account_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 设置挂载点
|
||||
# mountpoint_str = "$cmd,set,mountpoint,RTCM32_GGB*ff"
|
||||
mountpoint_str = "$cmd,set,mountpoint,RTCM33_GRCEJ*ff"
|
||||
imu_serial.write(mountpoint_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# 激活 ntrip
|
||||
ntrip_str = "$cmd,set,ntrip,enable,enable*ff"
|
||||
imu_serial.write(ntrip_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 航向补偿 左边为主天线
|
||||
heading_offset_str ="$cmd,set,headoffset,0*ff"
|
||||
imu_serial.write(heading_offset_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 杆臂配置
|
||||
leverarm_str = "$cmd,set,leverarm,gnss,0.0,0.0,0.4*ff"
|
||||
imu_serial.write(leverarm_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# 同样,将导航模式一条一条输入
|
||||
# 精对准
|
||||
imu_serial.write("$cmd,set,navmode,FineAlign,off*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 粗对准
|
||||
imu_serial.write("$cmd,set,navmode,coarsealign,off*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 动态对准
|
||||
imu_serial.write("$cmd,set,navmode,dynamicalign,on*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# gnss双精度
|
||||
imu_serial.write("$cmd,set,navmode,gnss,double*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# 打开车载模式
|
||||
imu_serial.write("$cmd,set,navmode,carmode,on*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 打开零速校正
|
||||
imu_serial.write("$cmd,set,navmode,zupt,off*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 固件索引
|
||||
imu_serial.write("$cmd,set,navmode,firmwareindex,0*ff".encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
|
||||
# 保存设置配置
|
||||
save_str = "$cmd,save,config*ff"
|
||||
imu_serial.write(save_str.encode("utf-8"))
|
||||
time.sleep(0.5)
|
||||
|
||||
# 完事后重新上电
|
||||
Reference in New Issue
Block a user