Skip to content

Commit d8e827a

Browse files
author
rostest
committed
RMS configuration update,
1 parent 777cbf2 commit d8e827a

File tree

10 files changed

+146
-66
lines changed

10 files changed

+146
-66
lines changed

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,3 +111,11 @@ test/emulator/scandata/fieldset_trial_0001.pcapng_full.json
111111
test/emulator/scandata/sopas_et_field_test_1_2_both_010.pcapng_full.json
112112
test/emulator/scandata/20211201_MRS_1xxx_IMU_with_movement.pcapng.json
113113
test/emulator/scandata/*.pcapng
114+
115+
test/emulator/scandata/20220316-rms1000-ascii.pcapng.json
116+
117+
test/emulator/scandata/20220316-rms1000-binary.pcapng.json
118+
119+
test/emulator/scandata/20220317-rms3xx-ascii.pcapng.json
120+
121+
test/emulator/scandata/20220317-rms3xx-binary.pcapng.json

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ features that will be removed in future versions **Removed** for deprecated feat
66

77
## Unreleased ##
88

9+
### v2.6.0 -
10+
- **Changed** V2.6.0: RMS configuration update, issue #7
11+
912
## Released ##
1013

1114
### v2.5.2 -

README.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,15 @@ ros2 run sick_scan sick_generic_caller sick_tim_5xx.launch hostname:=192.168.0.7
538538
539539
- **Field monitoring**: The **LMS1xx**, **LMS5xx**, **TiM7xx** and **TiM7xxS** families have [extended settings for field monitoring](./doc/field_monitoring_extensions.md).
540540
541+
- **Radar devices**: For radar devices (RMS-1xxx, RMS-3xx), radar raw targets or radar objects or both can be tracked and transmitted. You can activate parameter transmit_raw_targets, transmit_objects or both in the launchfile:
542+
```
543+
<param name="transmit_raw_targets" type="bool" value="false"/>
544+
<param name="transmit_objects" type="bool" value="true"/>
545+
```
546+
By default, radar objects are tracked.
547+
548+
549+
541550
### ROS services
542551
543552
On ROS-1 and ROS-2, services can be used to send COLA commands to the sensor. This can be very helpful for diagnosis, e.g. by querying the device status or its id.
@@ -576,7 +585,7 @@ Note:
576585
* The COLA commands are sensor specific. See the user manual and telegram listing for further details.
577586
* ROS services require installation of ROS-1 or ROS-2, i.e. services for Cola commands are currently not supported on native Linux or native Windows.
578587
* ROS services are currently not available for the LDMRS.
579-
* Some SOPAS commands like `sMN SetAccessMode 3 F4724744` stops the current measurement. In this case, the driver restarts after a timeout (5 seconds by default). To process those SOPAS commands without restart, you can
588+
* Some SOPAS commands like `sMN SetAccessMode 3 F4724744` stop the current measurement. In this case, the driver restarts after a timeout (5 seconds by default). To process those SOPAS commands without restart, you can
580589
* send `sMN LMCstartmeas` and `sMN Run` to switch again into measurement mode within the timeout, or
581590
* increase the driver timeout `read_timeout_millisec_default` in the launch-file.
582591

driver/src/sick_generic_caller.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@
8080
#define MAX_NAME_LEN (1024)
8181

8282
#define SICK_GENERIC_MAJOR_VER "2"
83-
#define SICK_GENERIC_MINOR_VER "5"
84-
#define SICK_GENERIC_PATCH_LEVEL "2"
83+
#define SICK_GENERIC_MINOR_VER "6"
84+
#define SICK_GENERIC_PATCH_LEVEL "0"
8585

8686
#include <algorithm> // for std::min
8787

driver/src/sick_generic_parser.cpp

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,20 @@ namespace sick_scan
281281
return (deviceIsRadar);
282282
}
283283

284+
/*!
285+
\brief set/get flag to mark the radar device supports selection of tracking modes.
286+
By default, true for all radar devices except RMS-1xxx, otherwise false.
287+
*/
288+
bool ScannerBasicParam::getTrackingModeSupported(void)
289+
{
290+
return (deviceIsRadar && trackingModeSupported);
291+
}
292+
void ScannerBasicParam::setTrackingModeSupported(bool _trackingModeSupported)
293+
{
294+
trackingModeSupported = _trackingModeSupported;
295+
}
296+
297+
284298
/*!
285299
\brief flag to mark mirroring of rotation direction
286300
\param _scanMirrored: false for normal mounting true for up side down or NAV 310
@@ -480,6 +494,7 @@ namespace sick_scan
480494
(int) basicParams.size(); i++) // set specific parameter for each scanner type - scanner type is identified by name
481495
{
482496
basicParams[i].setDeviceIsRadar(false); // Default
497+
basicParams[i].setTrackingModeSupported(false); // Default
483498
basicParams[i].setScannerName(allowedScannerNames[i]); // set scanner type for this parameter object
484499

485500
if (basicParams[i].getScannerName().compare(SICK_SCANNER_MRS_1XXX_NAME) ==
@@ -493,6 +508,7 @@ namespace sick_scan
493508
basicParams[i].setExpectedFrequency(50.0);
494509
basicParams[i].setUseBinaryProtocol(true);
495510
basicParams[i].setDeviceIsRadar(false); // Default
511+
basicParams[i].setTrackingModeSupported(false); // Default
496512
basicParams[i].setUseSafetyPasWD(false); // Default
497513
basicParams[i].setEncoderMode(-1); // Default
498514
basicParams[i].setImuEnabled(true);// Activate Imu for MRS1000
@@ -515,6 +531,7 @@ namespace sick_scan
515531
basicParams[i].setExpectedFrequency(50.0);
516532
basicParams[i].setUseBinaryProtocol(true);
517533
basicParams[i].setDeviceIsRadar(false); // Default
534+
basicParams[i].setTrackingModeSupported(false); // Default
518535
basicParams[i].setUseSafetyPasWD(false); // Default
519536
basicParams[i].setEncoderMode(-1); // Default
520537
basicParams[i].setImuEnabled(false);// Default
@@ -536,6 +553,7 @@ namespace sick_scan
536553
basicParams[i].setExpectedFrequency(15.0);
537554
basicParams[i].setUseBinaryProtocol(true);
538555
basicParams[i].setDeviceIsRadar(false); // Default
556+
basicParams[i].setTrackingModeSupported(false); // Default
539557
basicParams[i].setUseSafetyPasWD(false); // Default
540558
basicParams[i].setEncoderMode(-1); // Default
541559
basicParams[i].setImuEnabled(false);// Default
@@ -557,6 +575,7 @@ namespace sick_scan
557575
basicParams[i].setExpectedFrequency(15.0);
558576
basicParams[i].setUseBinaryProtocol(true);
559577
basicParams[i].setDeviceIsRadar(false); // Default
578+
basicParams[i].setTrackingModeSupported(false); // Default
560579
basicParams[i].setUseSafetyPasWD(false); // Default
561580
basicParams[i].setEncoderMode(-1); // Default
562581
basicParams[i].setImuEnabled(false);// Default
@@ -577,6 +596,7 @@ namespace sick_scan
577596
basicParams[i].setExpectedFrequency(600.0);
578597
basicParams[i].setUseBinaryProtocol(true);
579598
basicParams[i].setDeviceIsRadar(false); // Default
599+
basicParams[i].setTrackingModeSupported(false); // Default
580600
basicParams[i].setUseSafetyPasWD(false); // Default
581601
basicParams[i].setEncoderMode(-1); // Default
582602
basicParams[i].setImuEnabled(false);// Default
@@ -597,6 +617,7 @@ namespace sick_scan
597617
basicParams[i].setExpectedFrequency(15.0);
598618
basicParams[i].setUseBinaryProtocol(true);
599619
basicParams[i].setDeviceIsRadar(false); // Default
620+
basicParams[i].setTrackingModeSupported(false); // Default
600621
basicParams[i].setUseSafetyPasWD(false); // Default
601622
basicParams[i].setEncoderMode(-1); // Default
602623
basicParams[i].setImuEnabled(false);// Default
@@ -617,6 +638,7 @@ namespace sick_scan
617638
basicParams[i].setExpectedFrequency(15.0);
618639
basicParams[i].setUseBinaryProtocol(true);
619640
basicParams[i].setDeviceIsRadar(false); // Default
641+
basicParams[i].setTrackingModeSupported(false); // Default
620642
basicParams[i].setUseSafetyPasWD(true); // Safety scanner
621643
basicParams[i].setEncoderMode(-1); // Default
622644
basicParams[i].setImuEnabled(false);// Default
@@ -637,6 +659,7 @@ namespace sick_scan
637659
basicParams[i].setExpectedFrequency(15.0);
638660
basicParams[i].setUseBinaryProtocol(true);
639661
basicParams[i].setDeviceIsRadar(false); // Default
662+
basicParams[i].setTrackingModeSupported(false); // Default
640663
basicParams[i].setUseSafetyPasWD(false); // Default
641664
basicParams[i].setEncoderMode(-1); // Default
642665
basicParams[i].setImuEnabled(false);// Default
@@ -657,6 +680,7 @@ namespace sick_scan
657680
basicParams[i].setExpectedFrequency(25.0);
658681
basicParams[i].setUseBinaryProtocol(true);
659682
basicParams[i].setDeviceIsRadar(false); // Default
683+
basicParams[i].setTrackingModeSupported(false); // Default
660684
basicParams[i].setUseSafetyPasWD(false); // Default
661685
basicParams[i].setEncoderMode(-1); // Default
662686
basicParams[i].setImuEnabled(false);// Default
@@ -677,6 +701,7 @@ namespace sick_scan
677701
basicParams[i].setExpectedFrequency(15.0);
678702
basicParams[i].setUseBinaryProtocol(true);
679703
basicParams[i].setDeviceIsRadar(false); // Default
704+
basicParams[i].setTrackingModeSupported(false); // Default
680705
basicParams[i].setUseSafetyPasWD(false); // Default
681706
basicParams[i].setEncoderMode(-1); // Default
682707
basicParams[i].setImuEnabled(false);// Default
@@ -697,6 +722,7 @@ namespace sick_scan
697722
basicParams[i].setExpectedFrequency(15.0);
698723
basicParams[i].setUseBinaryProtocol(true);
699724
basicParams[i].setDeviceIsRadar(false); // Default
725+
basicParams[i].setTrackingModeSupported(false); // Default
700726
basicParams[i].setUseSafetyPasWD(false); // Default
701727
basicParams[i].setEncoderMode(-1); // Default
702728
basicParams[i].setImuEnabled(false);// Default
@@ -718,6 +744,7 @@ namespace sick_scan
718744
basicParams[i].setExpectedFrequency(50.0);
719745
basicParams[i].setUseBinaryProtocol(true);
720746
basicParams[i].setDeviceIsRadar(false); // Default
747+
basicParams[i].setTrackingModeSupported(false); // Default
721748
basicParams[i].setUseSafetyPasWD(false); // Default
722749
basicParams[i].setEncoderMode(-1); // Default
723750
basicParams[i].setImuEnabled(false);// Default
@@ -738,6 +765,7 @@ namespace sick_scan
738765
basicParams[i].setExpectedFrequency(12.5);
739766
basicParams[i].setUseBinaryProtocol(true);
740767
basicParams[i].setDeviceIsRadar(false); // Default
768+
basicParams[i].setTrackingModeSupported(false); // Default
741769
basicParams[i].setUseSafetyPasWD(false); // Default
742770
basicParams[i].setEncoderMode(-1); // Default
743771
basicParams[i].setImuEnabled(false);// Default
@@ -759,6 +787,7 @@ namespace sick_scan
759787
basicParams[i].setExpectedFrequency(0.00);
760788
basicParams[i].setUseBinaryProtocol(false); // use ASCII-Protocol
761789
basicParams[i].setDeviceIsRadar(true); // Device is a radar
790+
basicParams[i].setTrackingModeSupported(true); // Default
762791
basicParams[i].setUseSafetyPasWD(false); // Default
763792
basicParams[i].setEncoderMode(-1); // Default
764793
basicParams[i].setImuEnabled(false);// Default
@@ -780,6 +809,7 @@ namespace sick_scan
780809
basicParams[i].setExpectedFrequency(0.00);
781810
basicParams[i].setUseBinaryProtocol(false); // use ASCII-Protocol
782811
basicParams[i].setDeviceIsRadar(true); // Device is a radar
812+
basicParams[i].setTrackingModeSupported(false); // RMS 1xxx does not support selection of tracking modes
783813
basicParams[i].setUseSafetyPasWD(false); // Default
784814
basicParams[i].setEncoderMode(-1); // Default
785815
basicParams[i].setImuEnabled(false);// Default
@@ -800,6 +830,7 @@ namespace sick_scan
800830
basicParams[i].setExpectedFrequency(55.0);
801831
basicParams[i].setUseBinaryProtocol(true);
802832
basicParams[i].setDeviceIsRadar(false); // Default
833+
basicParams[i].setTrackingModeSupported(false); // Default
803834
basicParams[i].setUseSafetyPasWD(false); // Default
804835
basicParams[i].setEncoderMode(-1); // Default
805836
basicParams[i].setImuEnabled(false);// Default
@@ -820,6 +851,7 @@ namespace sick_scan
820851
basicParams[i].setExpectedFrequency(55.0);
821852
basicParams[i].setUseBinaryProtocol(true);
822853
basicParams[i].setDeviceIsRadar(false); // Default
854+
basicParams[i].setTrackingModeSupported(false); // Default
823855
basicParams[i].setUseSafetyPasWD(false); // Default
824856
basicParams[i].setEncoderMode(-1); // Default
825857
basicParams[i].setImuEnabled(false);// Default
@@ -840,6 +872,7 @@ namespace sick_scan
840872
basicParams[i].setExpectedFrequency(25.0);
841873
basicParams[i].setUseBinaryProtocol(true);
842874
basicParams[i].setDeviceIsRadar(false); // Default
875+
basicParams[i].setTrackingModeSupported(false); // Default
843876
basicParams[i].setUseSafetyPasWD(false); // Default
844877
basicParams[i].setEncoderMode(-1); // Default
845878
basicParams[i].setImuEnabled(false);// Default
@@ -860,6 +893,7 @@ namespace sick_scan
860893
basicParams[i].setExpectedFrequency(15.0);
861894
basicParams[i].setUseBinaryProtocol(true);
862895
basicParams[i].setDeviceIsRadar(false); // Default
896+
basicParams[i].setTrackingModeSupported(false); // Default
863897
basicParams[i].setUseSafetyPasWD(false); // Default
864898
basicParams[i].setEncoderMode(-1); // Default
865899
basicParams[i].setImuEnabled(false);// Default

0 commit comments

Comments
 (0)