我有多种功能。一个函数(估计)调用另一个函数(回调)的变量以执行计算。然而,有几个问题
我想要的是打印出估算结果,但没有打印任何内容
如果有人能让我知道我做错了什么,我将不胜感激
例:
#!/usr/bin/env python3
import rclpy
from rclpy.node import Node
import math
from geometry_msgs.msg import Quaternion
from sensor_msgs.msg import Imu
import numpy as np
from rclpy.qos import qos_profile_sensor_data
class S_E(Node):
def __init__(self):
super().__init__('s_e')
self.sub = self.create_subscription(Imu, '/imu', self.callback, qos_profile=qos_profile_sensor_data)
def callback(self, msg):
quat = self.quat = msg.orientation # x,y,z
a_rate = self.a_rate = msg.angular_velocity # x,y,z
return quat, a_rate
def estimation(self):
print("Hello")
quat, a_rate = callback()
estimate = (0.5 * a_rate) * quat
print(estimate)
def main(args=None):
rclpy.init(args=args) # initialize ROS2 Library
s_e = S_E() # make an object of class
try:
while (1):
rclpy.spin(s_e)
except Exception as e:
print("Exception: {}".format(e))
rclpy.spin(s_e)
rclpy.shutdown()
if __name__ == '__main__':
main()
您没有对对象调用估算函数。你可以这样做
相关问题 更多 >
编程相关推荐