hey guys , just started working with ROS and MATLAB for Msc .I am trying to access laser scannerdata from ros But keep getting the following error. Could somebody help me

1 view (last 30 days)
laserScan=scanHandle;
scanSubCallback=rossubscriber('/scan',{@scanCallback, laserScan});
function [] = scanCallback( ~, LaserScanMsg, laserScan)
laserScan.ranges=LaserScanMsg.ranges;
laserscan.angles=readScanAngles(LaserScanMsg);
laserScan.beta=LaserScanMsg.beta;
laserScan.rmin=LaserScanMsg.rmin;
laserScan.phmin=LaserScanMsg.phmin;
end
%scanhandle I defined in a.m file
classdef scanHandle < handle
properties
ranges=0
angles =0
beta = 0.5;
robotradius=0.2;
rmin=0;
phimin=0;
end
...
end
THIS IS THE ERROR I GET
Unrecognized method, property, or field 'ranges' for class
'ros.msg.sensor_msgs.LaserScan'.
Error in LiveEditorEvaluationHelperE479036005>scanCallback (line 25)
laserScan.ranges=LaserScanMsg.ranges;
Error in ros.internal.SubscriberCallbackHandler/processNewMessage
(line 58)
feval(obj.NewMessageCallbackFcn, ...
Unrecognized method, property, or field 'ranges' for class
'ros.msg.sensor_msgs.LaserScan'.

Accepted Answer

Walter Roberson
Walter Roberson on 6 May 2022
You have to use Ranges not ranges.
  3 Comments
Walter Roberson
Walter Roberson on 6 May 2022
LaserScanMsg objects do not have beta, rmin, or phmin .
laserscan.angles=readScanAngles(LaserScanMsg);
Is it possible that beta, rmin, phmin are being returned by readScanAngles ?

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!