Closed pascalzauberzeug closed 4 weeks ago
Same happened in Follow Crop Mode with new setting as you can see in #103
rosys_1 | 2024-07-16 17:19:14.690 [INFO] rosys/vision/mjpeg_camera/mjpeg_camera_provider.py:90: activating camera "b8:a4:4f:a9:43:1f-1" at ip "192.168.42.3" ...
rosys_1 | 2024-07-16 17:19:14.691 [INFO] rosys/vision/mjpeg_camera/mjpeg_camera_provider.py:90: activating camera "b8:a4:4f:a9:43:1f-2" at ip "192.168.42.3" ...
rosys_1 | 2024-07-16 17:19:14.691 [INFO] rosys/vision/mjpeg_camera/mjpeg_camera_provider.py:90: activating camera "b8:a4:4f:a9:43:1f-3" at ip "192.168.42.3" ...
rosys_1 | 2024-07-16 17:19:14.692 [INFO] rosys/vision/mjpeg_camera/mjpeg_camera_provider.py:90: activating camera "b8:a4:4f:a9:43:1f-4" at ip "192.168.42.3" ...
rosys_1 | 2024-07-16 17:19:14.692 [INFO] rosys/vision/mjpeg_camera/mjpeg_device.py:44: Capturing images from http://192.168.42.3/axis-cgi/mjpg/video.cgi?camera=1
rosys_1 | 2024-07-16 17:19:14.707 [INFO] rosys/vision/mjpeg_camera/mjpeg_device.py:44: Capturing images from http://192.168.42.3/axis-cgi/mjpg/video.cgi?camera=2
rosys_1 | 2024-07-16 17:19:14.720 [INFO] rosys/vision/mjpeg_camera/mjpeg_device.py:44: Capturing images from http://192.168.42.3/axis-cgi/mjpg/video.cgi?camera=3
rosys_1 | 2024-07-16 17:19:14.732 [INFO] rosys/vision/mjpeg_camera/mjpeg_device.py:44: Capturing images from http://192.168.42.3/axis-cgi/mjpg/video.cgi?camera=4
rosys_1 | 2024-07-16 17:19:15.817 [WARNING] rosys/vision/detector_hardware.py:35: sio connect error on 8004: Connection refused by the server
rosys_1 | 2024-07-16 17:19:15.817 [ERROR] rosys/vision/detector_hardware.py:47: connection to f7797a9f-5244-4b2b-b23b-b8b6e7681cf7 at port 8004 failed; trying again
rosys_1 | 2024-07-16 17:19:17.515 [INFO] field_friend/vision/camera_configurator.py:27: updating camera config
rosys_1 | 2024-07-16 17:19:17.537 [INFO] rosys/hardware/battery_control.py:28: releasing battery relay
rosys_1 | 2024-07-16 17:19:18.517 [INFO] field_friend/vision/camera_configurator.py:36: camera: 32e4-9230-platform-3610000.xhci-usb-0:2.3:1.0 is active
rosys_1 | 2024-07-16 17:19:18.518 [INFO] field_friend/vision/camera_configurator.py:46: parameter width with value 1280
rosys_1 | 2024-07-16 17:19:18.518 [INFO] field_friend/vision/camera_configurator.py:46: parameter height with value 720
rosys_1 | 2024-07-16 17:19:18.518 [INFO] field_friend/vision/camera_configurator.py:46: parameter auto_exposure with value True
rosys_1 | 2024-07-16 17:19:18.519 [INFO] field_friend/vision/camera_configurator.py:46: parameter fps with value 10
rosys_1 | 2024-07-16 17:19:18.519 [INFO] field_friend/vision/camera_configurator.py:48: 9 != 10
rosys_1 | 2024-07-16 17:19:18.519 [INFO] field_friend/vision/camera_configurator.py:98: Updated camera 32e4-9230-platform-3610000.xhci-usb-0:2.3:1.0 parameters, requesting backup...
rosys_1 | 2024-07-16 17:19:18.818 [INFO] rosys/vision/detector_hardware.py:45: trying reconnect f7797a9f-5244-4b2b-b23b-b8b6e7681cf7
rosys_1 | 2024-07-16 17:19:18.819 [INFO] rosys/vision/detector_hardware.py:57: connecting to detector at ws://localhost:8004
rosys_1 | 2024-07-16 17:19:18.843 [INFO] rosys/vision/detector_hardware.py:59: connected successfully
rosys_1 | 2024-07-16 17:19:22.507 [INFO] field_friend/vision/calibratable_usb_camera_provider.py:24: backing up camera: {'id': '32e4-9230-platform-3610000.xhci-usb-0:2.1:1.0', 'name': '32e4-9230-platform-3610000.xhci-usb-0:2.1:1.0', 'connect_after_init': True, 'streaming': False, 'focal_length': 1830, 'calibration': {'intrinsics': {'matrix': [[900.7563580745991, 0.0, 663.0230501520205], [0.0, 904.6425099884107, 301.96771840322316], [0.0, 0.0, 1.0]], 'distortion': [-0.3936727926969431, 0.1910463197137935, 0.004863672318620469, 0.0004754694660314551, -0.04783286390279313], 'rotation': {'R': [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]]}, 'size': {'width': 1280, 'height': 720}}, 'extrinsics': {'rotation': {'R': [[-0.008812065190163532, 0.7845453340130073, -0.6200088437962019], [0.9999610194820463, 0.007257303739787835, -0.005029021659822479], [0.0005540970229195576, -0.620028991597044, -0.7845787038631892]]}, 'translation': [0.2925151857987712, 0.014639470490577467, 0.3090187031839868]}}, 'auto_exposure': True, 'exposure': False, 'width': 1280, 'height': 720, 'fps': 9}
rosys_1 | 2024-07-16 17:19:22.511 [INFO] field_friend/vision/calibratable_usb_camera_provider.py:24: backing up camera: {'id': '32e4-9230-platform-3610000.xhci-usb-0:2.3:1.0', 'name': '32e4-9230-platform-3610000.xhci-usb-0:2.3:1.0', 'connect_after_init': True, 'streaming': True, 'focal_length': 1830, 'calibration': {'intrinsics': {'matrix': [[900.7563580745991, 0.0, 663.0230501520205], [0.0, 904.6425099884107, 301.96771840322316], [0.0, 0.0, 1.0]], 'distortion': [-0.3936727926969431, 0.1910463197137935, 0.004863672318620469, 0.0004754694660314551, -0.04783286390279313], 'rotation': {'R': [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]]}, 'size': {'width': 1280, 'height': 720}}, 'extrinsics': {'rotation': {'R': [[-0.008812065190163532, 0.7845453340130073, -0.6200088437962019], [0.9999610194820463, 0.007257303739787835, -0.005029021659822479], [0.0005540970229195576, -0.620028991597044, -0.7845787038631892]]}, 'translation': [0.2925151857987712, 0.014639470490577467, 0.3090187031839868]}}, 'auto_exposure': True, 'exposure': False, 'width': 1280, 'height': 720, 'fps': 9}
rosys_1 | 2024-07-16 17:19:24.741 [INFO] rosys/rosys.py:69: automation started
rosys_1 | 2024-07-16 17:19:24.743 [INFO] field_friend/automations/navigation/follow_crops_navigation.py:30: Activating Recorder...
rosys_1 | 2024-07-16 17:20:02.570 [WARNING] rosys/rosys.py:232: less than 300 mb of memory remaining -> start garbage collection
rosys_1 | 2024-07-16 17:20:02.959 [INFO] field_friend/localization/gnss_hardware.py:102: Parse error: ('could not parse data', '$')
rosys_1 | 2024-07-16 17:20:02.966 [WARNING] field_friend/localization/gnss_hardware.py:109: No location in GNSS data -- maybe it was provided in GGA message?
rosys_1 | 2024-07-16 17:20:02.967 [WARNING] field_friend/localization/gnss.py:94: new GNSS record is None
rosys_1 | 2024-07-16 17:20:02.967 [INFO] field_friend/automations/automation_watcher.py:62: not pausing automation because GNSS connection lost but GNSS watch is not active
rosys_1 | 2024-07-16 17:20:03.941 [WARNING] rosys/rosys.py:235: finished garbage collection
rosys_1 | 2024-07-16 17:21:00.983 [INFO] rosys/rosys.py:69: automation paused because pause button was pressed```
@pascalzauberzeug is it really happening with "straight line navigation"? With "follow crops" I can imagine how a constellation of crops could lead to such a turn. But with "straight line" I've never experienced it before. If it does happen with "straight line", I think we need much more detailed logging to get to the bottom of this.
Both your logs show new GNSS record is None
. Have you picked the logs because of this message or are the logs truly the time where the robot made it turn? To verify the behaviour with lost signal, I created https://github.com/zauberzeug/field_friend/pull/124. It does not turn the robot.
@rodja Yes, I ran F13 only on straight line. The log I posted is just the minute before I pressed the e-stop
Happened again with straight line and tornado on https://github.com/zauberzeug/field_friend/pull/123, so without the new drive_to_yaw changes.
rosys_1 | 2024-07-17 11:15:33.713 [INFO] field_friend/automations/implements/tornado.py:26: Performing Tornado Workflow..
rosys_1 | 2024-07-17 11:15:33.714 [INFO] field_friend/automations/implements/tornado.py:32: Drilling crop at Point(-0.206, -1.993) with angle 30.0°
rosys_1 | 2024-07-17 11:15:33.714 [INFO] field_friend/automations/puncher.py:67: Punching at 0.05288198393953387 with depth 0.01...
rosys_1 | 2024-07-17 11:15:33.714 [INFO] field_friend/hardware/y_axis.py:47: moving yaxis to 0.05288198393953387 with speed 500
rosys_1 | 2024-07-17 11:15:33.715 [INFO] field_friend/hardware/y_axis_canopen_hardware.py:76: moving to steps: 178343
rosys_1 | 2024-07-17 11:15:36.215 [INFO] field_friend/hardware/y_axis_canopen_hardware.py:89: yaxis moved to 0.05288198393953387
rosys_1 | 2024-07-17 11:15:36.216 [INFO] field_friend/automations/puncher.py:163: Drilling with tornado at 30.0°...
rosys_1 | 2024-07-17 11:15:36.216 [INFO] field_friend/hardware/tornado.py:220: moving z axis down
rosys_1 | 2024-07-17 11:15:37.216 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.316 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.416 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.516 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.617 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.718 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.819 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:37.919 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.020 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.122 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.223 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.325 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.427 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.528 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.629 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.730 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.831 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:38.932 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:39.036 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:39.136 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:39.237 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:39.339 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:15:39.440 [INFO] field_friend/hardware/tornado.py:232: minimum position reached
rosys_1 | 2024-07-17 11:15:39.440 [INFO] field_friend/hardware/tornado.py:251: finalizing moving z axis down
rosys_1 | 2024-07-17 11:15:47.764 [INFO] field_friend/hardware/tornado.py:207: moving z axis to 0
rosys_1 | 2024-07-17 11:15:50.576 [INFO] field_friend/hardware/tornado.py:212: z axis moved to 0
rosys_1 | 2024-07-17 11:15:54.597 [INFO] field_friend/automations/puncher.py:105: punched at 0.05 with depth 0.01, now back to rest position "reference"
rosys_1 | 2024-07-17 11:15:54.598 [INFO] field_friend/automations/implements/weeding_implement.py:91: workflow completed
rosys_1 | 2024-07-17 11:15:54.599 [INFO] field_friend/automations/implements/tornado.py:64: Skipping weed because it was already punched
rosys_1 | 2024-07-17 11:15:55.106 [INFO] field_friend/automations/implements/tornado.py:64: Skipping weed because it was already punched
rosys_1 | 2024-07-17 11:16:00.817 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.13936204517838485 away at world: Point(-0.316, -2.375), local: Point(0.152, 0.031)
rosys_1 | 2024-07-17 11:16:01.222 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.12093987346988559 away at world: Point(-0.316, -2.374), local: Point(0.133, 0.030)
rosys_1 | 2024-07-17 11:16:01.637 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.10279972164196935 away at world: Point(-0.315, -2.374), local: Point(0.115, 0.029)
rosys_1 | 2024-07-17 11:16:02.047 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.08381459873707699 away at world: Point(-0.315, -2.374), local: Point(0.096, 0.031)
rosys_1 | 2024-07-17 11:16:02.455 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.06769662970502546 away at world: Point(-0.316, -2.374), local: Point(0.080, 0.032)
rosys_1 | 2024-07-17 11:16:02.874 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0.04867445056361758 away at world: Point(-0.315, -2.374), local: Point(0.061, 0.030)
rosys_1 | 2024-07-17 11:16:05.385 [INFO] field_friend/automations/implements/tornado.py:26: Performing Tornado Workflow..
rosys_1 | 2024-07-17 11:16:05.386 [INFO] field_friend/automations/implements/tornado.py:32: Drilling crop at Point(-0.315, -2.369) with angle 30.0°
rosys_1 | 2024-07-17 11:16:05.386 [INFO] field_friend/automations/puncher.py:67: Punching at 0.030160977936872717 with depth 0.01...
rosys_1 | 2024-07-17 11:16:05.386 [INFO] field_friend/hardware/y_axis.py:47: moving yaxis to 0.030160977936872717 with speed 500
rosys_1 | 2024-07-17 11:16:05.386 [INFO] field_friend/hardware/y_axis_canopen_hardware.py:76: moving to steps: 144682
rosys_1 | 2024-07-17 11:16:07.290 [INFO] field_friend/hardware/y_axis_canopen_hardware.py:89: yaxis moved to 0.030160977936872717
rosys_1 | 2024-07-17 11:16:07.290 [INFO] field_friend/automations/puncher.py:163: Drilling with tornado at 30.0°...
rosys_1 | 2024-07-17 11:16:07.291 [INFO] field_friend/hardware/tornado.py:220: moving z axis down
rosys_1 | 2024-07-17 11:16:08.291 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.392 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.495 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.595 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.696 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.796 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.897 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:08.997 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.098 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.200 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.300 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.404 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.505 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.606 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.707 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.808 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:09.909 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.009 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.111 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.212 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.314 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.414 [INFO] field_friend/hardware/tornado.py:237: moving z axis down
rosys_1 | 2024-07-17 11:16:10.514 [INFO] field_friend/hardware/tornado.py:232: minimum position reached
rosys_1 | 2024-07-17 11:16:10.515 [INFO] field_friend/hardware/tornado.py:251: finalizing moving z axis down
rosys_1 | 2024-07-17 11:16:18.920 [INFO] field_friend/hardware/tornado.py:207: moving z axis to 0
rosys_1 | 2024-07-17 11:16:21.642 [INFO] field_friend/hardware/tornado.py:212: z axis moved to 0
rosys_1 | 2024-07-17 11:16:25.660 [INFO] field_friend/automations/puncher.py:105: punched at 0.03 with depth 0.01, now back to rest position "reference"
rosys_1 | 2024-07-17 11:16:25.661 [INFO] field_friend/automations/implements/weeding_implement.py:91: workflow completed
rosys_1 | 2024-07-17 11:16:25.661 [INFO] field_friend/automations/implements/tornado.py:64: Skipping weed because it was already punched
rosys_1 | 2024-07-17 11:16:26.170 [INFO] field_friend/automations/implements/tornado.py:82: Targeting crop 60343ed5-4696-4796-b36a-46e726bc169c which is 0 away at world: Point(-0.290, -2.377), local: Point(0.008, 0.043)
rosys_1 | 2024-07-17 11:16:33.339 [WARNING] rosys/hardware/estop.py:56: E-Stop [1] changed
Could you add more logging? Like the yaw change when calling the _drive
method? Or maybe activate serial logging so we can find out what is send to the motors when the turn happens...
This should be fixed with https://github.com/zauberzeug/field_friend/pull/134 but we still have to test it
The robot still turns on spot without moving forwards when using the straight line navigation. Tested with F13/RB36 on https://github.com/zauberzeug/field_friend/pull/96, but I don't think it is related to the changes done there.