From vfenelon at gmail.com Mon Nov 3 12:38:35 2008 From: vfenelon at gmail.com (Valquiria) Date: Mon, 3 Nov 2008 15:38:35 -0200 Subject: [Aria-users] Re-starting onboard computer peoplebot Message-ID: <1f0a5ad00811030938g5093383erb2ab7ad29c48480a@mail.gmail.com> Hi I need a help. I'm used the peoplebot in my research. It is about perception and localization used the only one camera. I'm programming in C++. But, in earlier weeks, the onboard computer don't stay on more than a few minutes on without re-started. The operacional system has climb. Someone known what must being to cause this problem. So what I should do to solve it, what do you suggest me? I need finish my research, and without peoplebot this is not feasible aim. Thank you Valquiria -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081103/2d993682/attachment.html From blomba at unione.com.br Tue Nov 4 08:27:13 2008 From: blomba at unione.com.br (=?ISO-8859-1?Q?Bruno=20Teixeira=20Lomba?=) Date: Tue, 4 Nov 2008 11:27:13 -0200 Subject: [Aria-users] =?iso-8859-1?q?Log_Sonar_Readings?= In-Reply-To: References: Message-ID: <20081104132713.23863.qmail@hm1079.locaweb.com.br> Hi Aria-users, My problem was solved. Instead of using getx(), getY() and getTh(), I used getRawEncoderPose().getX()... Only then I get the correct value ... Thank you for the help... Hugs Bruno Teixeira Lomba Mon, 27 Oct 2008 20:50:00 -0300, "Bruno Teixeira Lomba" escreveu: > > > I ran the guiServerSonar with their tips and found the following problems: > > - I did not use robot.getRunningWithLock (), only robot.isRunning, because not compiled... > > - To turn it always generates the same values. He leads by 1 in 1 second, but always with the same values. I did the test only with the getX. > > Here attached image of the simulation with the issue said. > > Could you help me? > > Thanks again > > Bruno Teixeira Lomba > > > > Mon, 27 Oct 2008 09:09:17 -0400, Reed Hedges escreveu: > > > Bruno Teixeira Lomba wrote: > > > I thought of something like: > > > > > > while (robot.isRunning ()) ( > > > ArLog::log(ArLog::Normal, "% f", robot.getX()); > > > ); > > > > > > > This will work, if you also lock the robot and include a sleep to avoid > > consuming too much CPU time. You can use ArLog::init() to choose a file to write > > all log messages to. This will include messages printed by ARIA classes. (You > > could use fprintf or a std::ofstream instead if you don't want to use ArLog) > > > > > > > What point in the guiServerSonar I can put this? > > > > Replace the call to waitForRunExit() with your loop. > > > > > > Example: > > > > > > At start of program: > > // Write all Normal and Terse ArLog messages to the file "log.txt" (Verbose is > > filtered out) > > ArLog::init(ArLog::File, ArLog::Normal, "log.txt"); > > > > > > at end of program instead of robot.waitForRunExit(): > > > > // Log X, Y, Theta every second. > > while(robot.getRunningWithLock()) { > > robot.lock(); > > ArLog::log(ArLog::Normal, "%f %f %f", robot.getX(), robot.getY(), robot.getTh()); > > robot.unlock(); > > ArUtil::sleep(1000); //msec > > } > > > > > > > > There is also a class called ArDataLogger which writes information to a file > > separately from the main loop and not using ArLog. ArDataLogger must be > > configured using ArConfig (you use MobileEyes Tools->Robot Configuration to > > change parameters) and also given ArFunctor objects to invoke to retrieve data > > to log (use addString). > > > > Reed > > > > _______________________________________________ > > Aria-users mailing list > > Aria-users at lists.mobilerobots.com > > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > > > To unsubscribe visit the above webpage or send an e-mail to: > > > > aria-users-leave at lists.mobilerobots.com > > > > > > > > > > From mmiskon at monash.edu.au Wed Nov 5 20:27:15 2008 From: mmiskon at monash.edu.au (Fahmi Miskon) Date: Thu, 06 Nov 2008 11:27:15 +1000 Subject: [Aria-users] Log Sonar Readings In-Reply-To: <20081104132713.23863.qmail@hm1079.locaweb.com.br> Message-ID: <20081106012717.C8F094FB0A@moe.its.monash.edu.au> Hi guys, I got this problem where my simulated robot hang at robot.lock(); robot.move(400); robot.unlock(); while(robot.isMoveDone()=0); It seems that the robot just stop moving and not finish the 400 mm distance. I use mobilesim software with robot model p3dx. I use Aria which is compatible with c++ ver 6 2003. In the program I ve another qt thread running to draw some output. I also use simulated laser reading in the program. Do you guys have any idea why this happen? Regards, Muhammad Fahmi Miskon (Fahmi) ECSE Postgraduate, Monash Univ. From ericavery at epix.net Fri Nov 7 13:49:21 2008 From: ericavery at epix.net (Eric Avery) Date: Fri, 7 Nov 2008 13:49:21 -0500 Subject: [Aria-users] Re-starting onboard computer peoplebot In-Reply-To: <1f0a5ad00811030938g5093383erb2ab7ad29c48480a@mail.gmail.com> References: <1f0a5ad00811030938g5093383erb2ab7ad29c48480a@mail.gmail.com> Message-ID: <006001c94109$8c75eee0$07fea8c0@flowbenew> Valquiria, When you say the computer will not stay on what do you mean? Does the system crash with errors and you have to reboot or dose it simply reboot on its own? When the issue does occur is the robot plugged into a charger? What hardware do you have running (i.e. LCD, laser, camera.) each device will use power (LCD uses a lot). My first suggestion is to monitor the battery voltage. You can use ARIA ArRobot class to get the voltage and it should be somewhere between 11 and 14 volts. I have noticed random reboots on the pioneer and peoplebot platforms if the voltage drops below 11 volts. However, you should get warning beeps from the onboard controller and the battery light should go from green to red. If this is what you are seeing and you have fully charged the batteries then you either need new batteries or you need to turn off some of the hardware. It is also possible that there could be a short somewhere that is draining the batteries but that is very unlikely and I would think you would see other issues. Eric Avery _____ From: aria-users-bounces at lists.mobilerobots.com [mailto:aria-users-bounces at lists.mobilerobots.com] On Behalf Of Valquiria Sent: Monday, November 03, 2008 12:39 PM To: aria-users at lists.mobilerobots.com Subject: [Aria-users] Re-starting onboard computer peoplebot Hi I need a help. I'm used the peoplebot in my research. It is about perception and localization used the only one camera. I'm programming in C++. But, in earlier weeks, the onboard computer don't stay on more than a few minutes on without re-started. The operacional system has climb. Someone known what must being to cause this problem. So what I should do to solve it, what do you suggest me? I need finish my research, and without peoplebot this is not feasible aim. Thank you Valquiria -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081107/24f3f87e/attachment.html From luxionghui at gmail.com Mon Nov 10 12:00:10 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 10 Nov 2008 12:00:10 -0500 Subject: [Aria-users] Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> Message-ID: <70655cbf0811100900o185aab15w4e33985cf1694b09@mail.gmail.com> > And which file contains the source code calculating these parameters, and > how about the accuracy. Thanks very much! Besides, the values returned by > myRobot->getTransAccel()is always a constant (from gyro), anybody can tell > me what the problem is? And the value of myGyro->getHeading() keeps changing > even though the robot does not move at all, is it related to temperature > compenstation? > Thanks very much! > > -- > "If you really want something in this life, you have to work for it. Now, > quiet! They're about to announce the lottery numbers..." > - Homer Simpson > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081110/9018de53/attachment-0001.html From luxionghui at gmail.com Mon Nov 10 12:01:32 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 10 Nov 2008 12:01:32 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> Message-ID: <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> And which file contains the source code calculating these parameters, and how about the accuracy. Thanks very much! Besides, the values returned by myRobot->getTransAccel()is always a constant (from gyro), anybody can tell me what the problem is? And the value of myGyro->getHeading() keeps changing even though the robot does not move at all, is it related to temperature compenstation? Thanks very much! -- "If you really want something in this life, you have to work for it. Now, quiet! They're about to announce the lottery numbers..." - Homer Simpson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081110/1f49275d/attachment.html From kennedy at MobileRobots.com Mon Nov 10 16:23:24 2008 From: kennedy at MobileRobots.com (William Kennedy) Date: Mon, 10 Nov 2008 16:23:24 -0500 Subject: [Aria-users] New uARCS firmware Message-ID: <6.2.5.6.2.20081110162013.03798860@MobileRobots.com> Hi, all: Just released uARCS version 4.5. Improvements include additional power port assignments and client commands. Download from http://robots.mobilerobots.com. Please read the README for details. Regards, William Kennedy, PhD From reed at mobilerobots.com Tue Nov 11 20:01:21 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 11 Nov 2008 20:01:21 -0500 Subject: [Aria-users] Log Sonar Readings In-Reply-To: <20081027225000.27640.qmail@hm1305.locaweb.com.br> References: <20081027225000.27640.qmail@hm1305.locaweb.com.br> Message-ID: <491A2AE1.6000704@mobilerobots.com> Hello, Bruno Teixeira Lomba wrote: > I ran the guiServerSonar with their tips and found the following problems: > > - I did not use robot.getRunningWithLock (), only robot.isRunning, because not compiled... I was mistaken about that, isRunning() should work fine > > - To turn it always generates the same values. He leads by 1 in 1 second, but always with the same values. I did the test only with the getX. > What compiler are you using? Can you print out any other information from ArRobot, or is it also incorrect? It looks from your image that SONARNL is otherwise working correctly, right? (it path plans and navigates correctly?) Reed From reed at mobilerobots.com Tue Nov 11 20:20:19 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 11 Nov 2008 20:20:19 -0500 Subject: [Aria-users] Re-starting onboard computer peoplebot In-Reply-To: <1f0a5ad00811030938g5093383erb2ab7ad29c48480a@mail.gmail.com> References: <1f0a5ad00811030938g5093383erb2ab7ad29c48480a@mail.gmail.com> Message-ID: <491A2F53.2030207@mobilerobots.com> Hello, do you still have this problem? If so, write to support at mobilerobots.com. Include your robot's serial number. Reed Valquiria wrote: > Hi I need a help. > I'm used the peoplebot in my research. It is about perception and > localization used the only one camera. I'm programming in C++. But, in > earlier weeks, the onboard computer don't stay on more than a few minutes on > without re-started. > The operacional system has climb. > Someone known what must being to cause this problem. So what I should do to > solve it, what do you suggest me? > I need finish my research, and without peoplebot this is not feasible aim. > > Thank you > > Valquiria > > From reed at mobilerobots.com Tue Nov 11 20:25:37 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 11 Nov 2008 20:25:37 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> Message-ID: <491A3091.4030008@mobilerobots.com> Xionghui Lu wrote: > And which file contains the source code calculating these parameters, and > how about the accuracy. Thanks very much! Hello, Aria sends velocity commands to, and receives the robot's measured forward velocity from the robot's firmware. This is done in ArRobot (src/ArRobot.cpp). The velocity estimation based on encoder readings is internal to the robot firmware. > Besides, the values returned by > myRobot->getTransAccel()is always a constant (from gyro), anybody can tell > me what the problem is? This value is not base on a measurement, but is a constant used by the firmware when executing motion commands. That is, you can send a desired TransAccel value using setTransAccel(), and the firmware will use this value when it needs to increase the robot's velocity to achieve a desired commanded velocity. The default value is set in the firmware configuration. > And the value of myGyro->getHeading() keeps changing > even though the robot does not move at all, is it related to temperature > compenstation? Yes, it could be an environmental effect on the gyro, or just a small oscillation or error. By how much does it vary? Reed From lafary at mobilerobots.com Tue Nov 11 20:53:16 2008 From: lafary at mobilerobots.com (Matt LaFary) Date: Tue, 11 Nov 2008 20:53:16 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <491A3091.4030008@mobilerobots.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> Message-ID: <491A370C.4080806@mobilerobots.com> > > And the value of myGyro->getHeading() keeps changing >> even though the robot does not move at all, is it related to temperature >> compenstation? > > Yes, it could be an environmental effect on the gyro, or just a small > oscillation or error. By how much does it vary? The temperature actually wouldn't cause drifting of a gyro, since the gyro code basically recalculates the center point whenever the robot is stopped (for either the firmware gyro or computer gyro). Drifting is probably more likely related to electrical noise in the robot (if it drifts more when you compile or use CPU, this is the problem) or a sensor that has more noise than normal for some reason or possibly a damaged sensor. First, see if you are using a newer robot where the gyro is implemented in firmware. You can do that by checking the 'gyroType' in the firmware configuration program (see the robot's documentation for that). If the gyroType is 2 or higher then you are using a firmware gyro. If the type is 1 then you are using a computer gyro. If you have a firmware gyro then you shouldn't use the ArAnalogGyro::getHeading command because the correction is done in the firmware and just reported to the robot with the corrected value (so the getHeading value shouldn't ever actually be set or change). If the normal robot heading is drifting though there's a parameter in the firmware called 'DriftFactor' that you can change to get rid of this drift, see the firmware documentation for more information on this (basically make it bigger). You may need a newer version of firmware to have this parameter. I've never seen the drift with a computer gyro, but if you have a computer gyro and you have a robot that uses ARCOS or uARCS then you can probably just convert to using a firmware gyro by setting gyroType to 2 and then calibrating the gyroCW and gyroCCW parameters (again, see the robot's user manual for more information on this) and then set the DriftFactor as mentioned in the previous paragraph. Note that the firmware gyro works much better than the computer gyro (and so this upgrade is probably recommended for about everyone). If you do have a computer gyro and have an older robot that can't use ARCOS or uARCS and it is drifting then you can look for the lines of code in ArAnalogGyro that are: if ((fabs(myRobot->getVel()) < 2 && fabs(myRobot->getRotVel()) < 2) && ArMath::fabs(reading) < 2) and then you need to change the last 2 value (check against fabs(reading)) to a higher number. If your robot doesn't report 0 vel or 0 heading when it is sitting still then that is the problem and means something else and let us know about it and we'll go from there. If none of this helps then its possible the sensor is damaged which is a hardware problem, so for that you should email support at mobilerobots.com with your robot's serial number with the description of the problem (and maybe include a link to your email on the online archive so they can see the thread, which would be http://lists.mobilerobots.com/pipermail/aria-users/2008-November/000296.html). Matt LaFary MobileRobots Inc From luxionghui at gmail.com Wed Nov 12 16:43:39 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Wed, 12 Nov 2008 16:43:39 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <491A370C.4080806@mobilerobots.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> Message-ID: <70655cbf0811121343l31b0c737u4595da936ad99138@mail.gmail.com> Ok, thanks. For the gyro part, I don't know whether our gyro is firmware gyro or computer gyro, but I can read out the value from ArAnalogGyro::getHeading(), and its value just shifting when the robot is static (not so much, around 0.1/sec). When I lift up the robot and rotate it, I can see the value change very quickly (obviously the gyro can sense the orientation change), it will increase when rotated clockwise and decrease counterclockwise. Does that mean we have a computer gyro? I can read out ArAnalogGyro::getTemperature() also, but its value change between 255 and 0, I guess it is just a unsigned init type. So do I still need to read directly from gyro, or the heading angle from myRobot has been corrected by gyro reading and I just don't need to use gyro reading any more? On Tue, Nov 11, 2008 at 8:53 PM, Matt LaFary wrote: > > And the value of myGyro->getHeading() keeps changing >> >>> even though the robot does not move at all, is it related to temperature >>> compenstation? >>> >> >> Yes, it could be an environmental effect on the gyro, or just a small >> oscillation or error. By how much does it vary? >> > > The temperature actually wouldn't cause drifting of a gyro, since the gyro > code basically recalculates the center point whenever the robot is stopped > (for either the firmware gyro or computer gyro). Drifting is probably more > likely related to electrical noise in the robot (if it drifts more when you > compile or use CPU, this is the problem) or a sensor that has more noise > than normal for some reason or possibly a damaged sensor. > > First, see if you are using a newer robot where the gyro is implemented in > firmware. You can do that by checking the 'gyroType' in the firmware > configuration program (see the robot's documentation for that). If the > gyroType is 2 or higher then you are using a firmware gyro. If the type is > 1 then you are using a computer gyro. > > If you have a firmware gyro then you shouldn't use the > ArAnalogGyro::getHeading command because the correction is done in the > firmware and just reported to the robot with the corrected value (so the > getHeading value shouldn't ever actually be set or change). If the normal > robot heading is drifting though there's a parameter in the firmware called > 'DriftFactor' that you can change to get rid of this drift, see the firmware > documentation for more information on this (basically make it bigger). You > may need a newer version of firmware to have this parameter. > > I've never seen the drift with a computer gyro, but if you have a computer > gyro and you have a robot that uses ARCOS or uARCS then you can probably > just convert to using a firmware gyro by setting gyroType to 2 and then > calibrating the gyroCW and gyroCCW parameters (again, see the robot's user > manual for more information on this) and then set the DriftFactor as > mentioned in the previous paragraph. Note that the firmware gyro works much > better than the computer gyro (and so this upgrade is probably recommended > for about everyone). > > If you do have a computer gyro and have an older robot that can't use ARCOS > or uARCS and it is drifting then you can look for the lines of code in > ArAnalogGyro that are: > > if ((fabs(myRobot->getVel()) < 2 && fabs(myRobot->getRotVel()) < 2) && > ArMath::fabs(reading) < 2) > > and then you need to change the last 2 value (check against fabs(reading)) > to a higher number. If your robot doesn't report 0 vel or 0 heading when it > is sitting still then that is the problem and means something else and let > us know about it and we'll go from there. > > If none of this helps then its possible the sensor is damaged which is a > hardware problem, so for that you should email support at mobilerobots.comwith your robot's serial number with the description of the problem (and > maybe include a link to your email on the online archive so they can see the > thread, which would be > http://lists.mobilerobots.com/pipermail/aria-users/2008-November/000296.html > ). > > Matt LaFary > MobileRobots Inc > -- "If you really want something in this life, you have to work for it. Now, quiet! They're about to announce the lottery numbers..." - Homer Simpson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081112/d4c27efa/attachment-0001.html From luxionghui at gmail.com Wed Nov 12 16:59:35 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Wed, 12 Nov 2008 16:59:35 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <491A370C.4080806@mobilerobots.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> Message-ID: <70655cbf0811121359r4b99f435jb28bb7f11af09833@mail.gmail.com> So could you recommend a way of calculating accelleration (both linear and angular) to me? I found a post talking about this issue several years ago, http://lists.mobilerobots.com/pipermail/aria-users/old/msg01363.html Do you have newer way of doing this? Thanks. On Tue, Nov 11, 2008 at 8:53 PM, Matt LaFary wrote: > > And the value of myGyro->getHeading() keeps changing >> >>> even though the robot does not move at all, is it related to temperature >>> compenstation? >>> >> >> Yes, it could be an environmental effect on the gyro, or just a small >> oscillation or error. By how much does it vary? >> > > The temperature actually wouldn't cause drifting of a gyro, since the gyro > code basically recalculates the center point whenever the robot is stopped > (for either the firmware gyro or computer gyro). Drifting is probably more > likely related to electrical noise in the robot (if it drifts more when you > compile or use CPU, this is the problem) or a sensor that has more noise > than normal for some reason or possibly a damaged sensor. > > First, see if you are using a newer robot where the gyro is implemented in > firmware. You can do that by checking the 'gyroType' in the firmware > configuration program (see the robot's documentation for that). If the > gyroType is 2 or higher then you are using a firmware gyro. If the type is > 1 then you are using a computer gyro. > > If you have a firmware gyro then you shouldn't use the > ArAnalogGyro::getHeading command because the correction is done in the > firmware and just reported to the robot with the corrected value (so the > getHeading value shouldn't ever actually be set or change). If the normal > robot heading is drifting though there's a parameter in the firmware called > 'DriftFactor' that you can change to get rid of this drift, see the firmware > documentation for more information on this (basically make it bigger). You > may need a newer version of firmware to have this parameter. > > I've never seen the drift with a computer gyro, but if you have a computer > gyro and you have a robot that uses ARCOS or uARCS then you can probably > just convert to using a firmware gyro by setting gyroType to 2 and then > calibrating the gyroCW and gyroCCW parameters (again, see the robot's user > manual for more information on this) and then set the DriftFactor as > mentioned in the previous paragraph. Note that the firmware gyro works much > better than the computer gyro (and so this upgrade is probably recommended > for about everyone). > > If you do have a computer gyro and have an older robot that can't use ARCOS > or uARCS and it is drifting then you can look for the lines of code in > ArAnalogGyro that are: > > if ((fabs(myRobot->getVel()) < 2 && fabs(myRobot->getRotVel()) < 2) && > ArMath::fabs(reading) < 2) > > and then you need to change the last 2 value (check against fabs(reading)) > to a higher number. If your robot doesn't report 0 vel or 0 heading when it > is sitting still then that is the problem and means something else and let > us know about it and we'll go from there. > > If none of this helps then its possible the sensor is damaged which is a > hardware problem, so for that you should email support at mobilerobots.comwith your robot's serial number with the description of the problem (and > maybe include a link to your email on the online archive so they can see the > thread, which would be > http://lists.mobilerobots.com/pipermail/aria-users/2008-November/000296.html > ). > > Matt LaFary > MobileRobots Inc > -- "If you really want something in this life, you have to work for it. Now, quiet! They're about to announce the lottery numbers..." - Homer Simpson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081112/fbdc39c9/attachment.html From reed at mobilerobots.com Thu Nov 13 08:51:07 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Thu, 13 Nov 2008 08:51:07 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811121359r4b99f435jb28bb7f11af09833@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> <70655cbf0811121359r4b99f435jb28bb7f11af09833@mail.gmail.com> Message-ID: <491C30CB.8060908@mobilerobots.com> Xionghui Lu wrote: > So could you recommend a way of calculating accelleration (both linear and > angular) to me? I found a post talking about this issue several years ago, > http://lists.mobilerobots.com/pipermail/aria-users/old/msg01363.html No, if you need a general idea of actual accelerations performed, you have to derive it from velocity over time. (Or infer it from the set acceleration parameter (getTransAccel()) and velocity changes your program requests.) Byron's email above provides good advice for using ArInterpolation if the 100ms update time is too coarse. For what purpose(s) do you need the robot acceleration? Reed From reed at mobilerobots.com Thu Nov 13 08:56:08 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Thu, 13 Nov 2008 08:56:08 -0500 Subject: [Aria-users] gyro (Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder?) In-Reply-To: <70655cbf0811121343l31b0c737u4595da936ad99138@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> <70655cbf0811121343l31b0c737u4595da936ad99138@mail.gmail.com> Message-ID: <491C31F8.6060500@mobilerobots.com> Xionghui Lu wrote: > For the gyro part, I don't know whether our gyro is firmware gyro or > computer gyro, but I can read out the value from ArAnalogGyro::getHeading() The difference between the two modes is where gyro correction calculations are performed, so it depends on whether your firmware version supports in-firmware calculations and whether it's enabled in the configuration. > So do I still need to read directly from gyro, or the heading angle from > myRobot has been corrected by gyro reading and I just don't need to use gyro > reading any more? Yes, the theta value in ArRobot has been corrected, either by ArAnalogGyro if doing computer/client side correction, or in the firmware if doing in-firmware correction. In the case of in-firmware corrections, an ArAnalogGyro object is not needed, but it does provide an interface for things like the temperature. Reed From enghemin at yahoo.com Mon Nov 17 05:52:26 2008 From: enghemin at yahoo.com (Hemin Sh.Aumer) Date: Mon, 17 Nov 2008 02:52:26 -0800 (PST) Subject: [Aria-users] Motion Commands using ArNetworking Message-ID: <50496.94210.qm@web56202.mail.re3.yahoo.com> Hello Aria-Users, I am trying to send a basic motion?command (ex. robot.setVel(100)) from a remote PC running?as a Client to?the onboard PC running as a Server using ArNetworking. The?option that I found is?using -client.requestOnce("ratioDriving",&packet)-?and?sending parameters using the packet. But how to find out if there is a way to send the motion commands as if I was?sending it from the onboard PC itself? or how to create a service like "ratioDriving" to?run on the server and use it to send -robot.setVel() and robot.stop() for example? Any help will be appreciated... ? Hemin Sh. Omer Nottingham, UK www.hemin.co.uk -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081117/a665e3fa/attachment.html From ericavery at epix.net Mon Nov 17 10:02:42 2008 From: ericavery at epix.net (ericavery at epix.net) Date: Mon, 17 Nov 2008 10:02:42 -0500 Subject: [Aria-users] Motion Commands using ArNetworking Message-ID: <380-220081111715242472@M2W007.mail2web.com> The easiest way to do this is to use the ArSimpleConnector class to connect an ArRobot instance to a TCP port on the robot PC. The TCP data is then forwarded to the robot?s serial port. This will allow you to control the robot via the ArRobot class remotely on the client computer. There is a ?server? program (ipthru) that comes with ARIA that will do the port forwarding for you. The only draw back to using this technique is that it may introduce lag in the data transmission. I have seen a few lag issues with laser data but not much with robot control, as long as you don?t move too fast things should work just fine. The program you will want to use is ipthru, it does not come in binary form so you will have to compile it, you can find the source code ARIA examples folder. Once you build it you run it on the robot pc like so To port forward to the robot controller type ipthru To port forward to the laser type ipthru laser To show usage syntax type ipthru /? Hope this helps Eric Avery Original Message: ----------------- From: Hemin Sh.Aumer enghemin at yahoo.com Date: Mon, 17 Nov 2008 02:52:26 -0800 (PST) To: aria-users at lists.mobilerobots.com Subject: [Aria-users] Motion Commands using ArNetworking Hello Aria-Users, I am trying to send a basic motion?command (ex. robot.setVel(100)) from a remote PC running?as a Client to?the onboard PC running as a Server using ArNetworking. The?option that I found is?using -client.requestOnce("ratioDriving",&packet)-?and?sending parameters using the packet. But how to find out if there is a way to send the motion commands as if I was?sending it from the onboard PC itself? or how to create a service like "ratioDriving" to?run on the server and use it to send -robot.setVel() and robot.stop() for example? Any help will be appreciated... ? Hemin Sh. Omer Nottingham, UK www.hemin.co.uk -------------------------------------------------------------------- mail2web - Check your email from the web at http://link.mail2web.com/mail2web From luxionghui at gmail.com Mon Nov 17 21:45:50 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 17 Nov 2008 21:45:50 -0500 Subject: [Aria-users] Question about setTransAccel() Message-ID: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> Hi, I have a question, what is the unit of the acceleration values assigned? I want to set a contant velocity and make the robot speed up to this value with fixed acceleration value. But it seems that no matter how small the acceleration is, the robot still can speed up to the given velocity very quickly. (I want to see the slowly speed up process so I can calculate accelration based on realtime velovity and compare it with acceleration value set) Besides, I found that a new function setMaxTransAccel() is added to newer version of Aria, but the aria I am using doesn't contain this function. Does hardware I am with support the new version of Aria? Thanks and what is this function for? Set the maximum acceleration value? What's that mean? That means setting acceleration value using setTransAccel() to a value bigger than this value is forbidden? I am confused. Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081117/06a6aa55/attachment.html From luxionghui at gmail.com Mon Nov 17 22:44:24 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 17 Nov 2008 22:44:24 -0500 Subject: [Aria-users] Question about setTransAccel() In-Reply-To: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> References: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> Message-ID: <70655cbf0811171944u1b40cc0ah35287d5b22c6211b@mail.gmail.com> And how long it takes Acceleration value take into effect? I tried different values but didn't see the difference.It alway takes 293 msec to read out the first non-zero velocity value, then in following around 8 msec reading cycles, the velocity value keeps unchanges, then in 403 msec it changes to a new value, then following 8 cycels with the same velocity.... Does that mean robot.getVel() only updates its value every 10 msecs? robot.lock(); robot.setTransAccel(60); robot.setVel(200); robot.unlock(); start.setToNow(); while (1) { printf("Current Linear velocity: %.2f\t Current Rotational velocity: %.2f\n Current Trans Acce: %.2f\t,Current Rotational Acce: %.2f\n,current position, x: %.2f\t, y: %.2f\n",robot.getVel(),robot.getRotVel(), robot.getTransAccel(),robot.getRotAccel(), robot.getPose().getX(), robot.getPose().getY()); robot.lock(); printf("Instant: %d\n", start.mSecSince()); if (start.mSecSince() > 1000) { printf("Move timed out\n"); robot.unlock(); break; } robot.unlock(); ArUtil::sleep(10); } On Mon, Nov 17, 2008 at 9:45 PM, Xionghui Lu wrote: > Hi, I have a question, what is the unit of the acceleration values > assigned? I want to set a contant velocity and make the robot speed up to > this value with fixed acceleration value. But it seems that no matter how > small the acceleration is, the robot still can speed up to the given > velocity very quickly. (I want to see the slowly speed up process so I can > calculate accelration based on realtime velovity and compare it with > acceleration value set) > Besides, I found that a new function setMaxTransAccel() is added to newer > version of Aria, but the aria I am using doesn't contain this function. Does > hardware I am with support the new version of Aria? Thanks and what is this > function for? Set the maximum acceleration value? What's that mean? That > means setting acceleration value using setTransAccel() to a value bigger > than this value is forbidden? I am confused. > Thanks! > -- "If you really want something in this life, you have to work for it. Now, quiet! They're about to announce the lottery numbers..." - Homer Simpson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081117/8f83eb7c/attachment-0001.html From waji3000 at 163.com Tue Nov 18 06:09:37 2008 From: waji3000 at 163.com (waji3000) Date: Tue, 18 Nov 2008 19:09:37 +0800 (CST) Subject: [Aria-users] Question about setTransAccel() Message-ID: <14938602.1142041227006577084.JavaMail.coremail@bj163app18.163.com> 1.setVel() myTransType = TRANS_VEL; ??action?????? Here actions is useless. 2.stateReflector?? ????????? This function control the robot myActionTransSet = false; transVal = ArMath::roundShort(myTransVal); transVal2 = 0; if (myTransType == TRANS_VEL) //when you use setVel() { maxVel = ArMath::roundShort(myTransVelMax); if (transVal > maxVel) transVal = maxVel; if (transVal < -maxVel) transVal = -maxVel; if (myLastTransVal != transVal || myLastTransType != myTransType || (myLastTransSent.mSecSince() >= myStateReflectionRefreshTime)) { comInt(ArCommands::VEL, ArMath::roundShort(transVal)); myLastTransSent.setToNow(); if (myLogMovementSent) ArLog::log(ArLog::Normal, "Non-action trans vel of %d", ArMath::roundShort(transVal)); //printf("Sent command vel!\n"); } 3.myStateReflectorCB myStateReflectorCB(this, &ArRobot::stateReflector) 4.mySyncTaskRoot mySyncTaskRoot->addNewLeaf("State Reflector", 45, &myStateReflectorCB); 5.run() mySyncLoop.runInThisThread(); 6.runInThisThread() call ArSyncLoop::runThread() 7.runThread() long timeToSleep; ArTime loopEndTime; ArTime lastLoop; while() { lastLoop.setToNow(); loopEndTime.setToNow(); loopEndTime.addMSec(myRobot->getCycleTime()); // ?????? the deadline of this cycle myRobot->getSyncTaskRoot()->run(); //?? just run timeToSleep = loopEndTime.mSecTo(); //??????? how many millisecond left if (timeToSleep > 0) ArUtil::sleep(timeToSleep); //Sleep } 8. int ArRobot::getCycleTime(void) const { return myCycleTime; } 9.ArRobot() myCycleTime = 100; 10.ArRobot::setCycleTime(unsigned int ms) set myCycleTime And how long it takes Acceleration value take into effect? I tried different values but didn't see the difference.It alway takes 293 msec to read out the first non-zero velocity value, then in following around 8 msec reading cycles, the velocity value keeps unchanges, then in 403 msec it changes to a new value, then following 8 cycels with the same velocity.... Does that mean robot.getVel() only updates its value every 10 msecs? robot.lock(); robot.setTransAccel(60); robot.setVel(200); robot.unlock(); start.setToNow(); while (1) { printf("Current Linear velocity: %.2f\t Current Rotational velocity: %.2f\n Current Trans Acce: %.2f\t,Current Rotational Acce: %.2f\n,current position, x: %.2f\t, y: %.2f\n",robot.getVel(),robot.getRotVel(), robot.getTransAccel(),robot.getRotAccel(), robot.getPose().getX(), robot.getPose().getY()); robot.lock(); printf("Instant: %d\n", start.mSecSince()); if (start.mSecSince() > 1000) { printf("Move timed out\n"); robot.unlock(); break; } robot.unlock(); ArUtil::sleep(10); } On Mon, Nov 17, 2008 at 9:45 PM, Xionghui Lu wrote: Hi, I have a question, what is the unit of the acceleration values assigned? I want to set a contant velocity and make the robot speed up to this value with fixed acceleration value. But it seems that no matter how small the acceleration is, the robot still can speed up to the given velocity very quickly. (I want to see the slowly speed up process so I can calculate accelration based on realtime velovity and compare it with acceleration value set) Besides, I found that a new function setMaxTransAccel() is added to newer version of Aria, but the aria I am using doesn't contain this function. Does hardware I am with support the new version of Aria? Thanks and what is this function for? Set the maximum acceleration value? What's that mean? That means setting acceleration value using setTransAccel() to a value bigger than this value is forbidden? I am confused. Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081118/dc0a404f/attachment.html From reed at mobilerobots.com Tue Nov 18 18:16:46 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 18 Nov 2008 18:16:46 -0500 Subject: [Aria-users] Question about setTransAccel() In-Reply-To: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> References: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> Message-ID: <49234CDE.3020806@mobilerobots.com> Hello, translational accelerations are mm/s/s, and rotational are degrees/s/s. So given a smaller value, the robot should take longer to approach a commanded speed. There are two places to set accelerations and decelerations: in the robot firmware configuration and in ARIA. Accelerations set in ARIA are sent to the robot as commands and they take precedence over the default set in the firmware configuration for the duration of that client session. Do you mean setAbsoluteMaxTransAccel? Those are limits within ARIA on acceleration values; setTransAccel checks this value, and limits requested trans. accel if it's greater than this value. (A warning will be printed if it does this). For example, the following code results in ArRobot sending an trans. accel command to the robot with the value 100, not 500: robot.setAbsoluteMaxTransAccel(100); robot.setTransAccel(500); ArActionDesired also includes acceleration maximums that an action could use to limit the acceleration requests of other actions. Xionghui Lu wrote: > Hi, I have a question, what is the unit of the acceleration values assigned? > I want to set a contant velocity and make the robot speed up to this value > with fixed acceleration value. But it seems that no matter how small the > acceleration is, the robot still can speed up to the given velocity very > quickly. (I want to see the slowly speed up process so I can calculate > accelration based on realtime velovity and compare it with acceleration > value set) > Besides, I found that a new function setMaxTransAccel() is added to newer > version of Aria, but the aria I am using doesn't contain this function. Does > hardware I am with support the new version of Aria? Thanks and what is this > function for? Set the maximum acceleration value? What's that mean? That > means setting acceleration value using setTransAccel() to a value bigger > than this value is forbidden? I am confused. > Thanks! > > From reed at mobilerobots.com Tue Nov 18 18:25:52 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 18 Nov 2008 18:25:52 -0500 Subject: [Aria-users] Question about setTransAccel() In-Reply-To: <70655cbf0811171944u1b40cc0ah35287d5b22c6211b@mail.gmail.com> References: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> <70655cbf0811171944u1b40cc0ah35287d5b22c6211b@mail.gmail.com> Message-ID: <49234F00.9060406@mobilerobots.com> Xionghui Lu wrote: > And how long it takes Acceleration value take into effect? I tried different > values but didn't see the difference. It will be sent to the robot in the next iteration of ArRobot's task cycle. This timing basically depends on the SIP cycle time but should be 100ms. It then takes a short amount of time to take effect within the robot firmware (<10ms); I don't know if there's a delay between the robot starting to move and the velocity value it sends back, I can look into it a bit more. Have you changed the SIP cycle time? Do you have a high CPU load when your program runs? If you check the return of ArRobot:getMotorPacCount() you should be getting an average of 10 (packets/sec). But in general, if you want to use a value as soon as it's received from the robot, you can use an ArRobot task callback. Sensor Interpretation tasks are called right after a SIP packet is received. See the ArRobot documentation for a description of the robot task cycle. Reed It alway takes 293 msec to read out the > first non-zero velocity value, then in following around 8 msec reading > cycles, the velocity value keeps unchanges, then in 403 msec it changes to a > new value, then following 8 cycels with the same velocity.... > Does that mean robot.getVel() only updates its value every 10 msecs? > > robot.lock(); > robot.setTransAccel(60); > robot.setVel(200); > robot.unlock(); > start.setToNow(); > > while (1) > { > printf("Current Linear velocity: %.2f\t Current Rotational velocity: > %.2f\n Current Trans Acce: %.2f\t,Current Rotational Acce: %.2f\n,current > position, x: %.2f\t, y: %.2f\n",robot.getVel(),robot.getRotVel(), > robot.getTransAccel(),robot.getRotAccel(), robot.getPose().getX(), > robot.getPose().getY()); > robot.lock(); > printf("Instant: %d\n", start.mSecSince()); > if (start.mSecSince() > 1000) > { > printf("Move timed out\n"); > robot.unlock(); > break; > } > > robot.unlock(); > ArUtil::sleep(10); > } > From reed at mobilerobots.com Tue Nov 18 18:34:34 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 18 Nov 2008 18:34:34 -0500 Subject: [Aria-users] Motion Commands using ArNetworking In-Reply-To: <50496.94210.qm@web56202.mail.re3.yahoo.com> References: <50496.94210.qm@web56202.mail.re3.yahoo.com> Message-ID: <4923510A.3040602@mobilerobots.com> Does the ratio drive request not work for you? If you want to create a new ArNetworking request to send the commands, you can use any of the ArNetworking requests as an example. In brief, you connect an ArFunctor object to a class method to handle requests from clients, unpack data from the packet, and act on the request. Note that ArServerHandlerRatioDrive uses the ArActions system, not direct motion functions in ArRobot. See the API docs for more on actions. They are similar to the movement functions but a bit higher level and allow several behaviors to be combined (e.g. driving but also slowing and stopping the robot so it doesn't hit sensed obstacles). If ArActions and your code using ArRobot's motion functions are both active, however, they can conflict (e.g. you use setVel(100) but then an action requests 0 velocity), so you should only use one or the other. Hemin Sh.Aumer wrote: > Hello Aria-Users, > I am trying to send a basic motion command (ex. robot.setVel(100)) from a remote PC running as a Client to the onboard PC running as a Server using ArNetworking. The option that I found is using -client.requestOnce("ratioDriving",&packet)- and sending parameters using the packet. But how to find out if there is a way to send the motion commands as if I was sending it from the onboard PC itself? or how to create a service like "ratioDriving" to run on the server and use it to send -robot.setVel() and robot.stop() for example? > > Any help will be appreciated... > > > > Hemin Sh. Omer > Nottingham, UK > www.hemin.co.uk > > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com From srady at rumms.uni-mannheim.de Thu Nov 20 03:23:54 2008 From: srady at rumms.uni-mannheim.de (sherine) Date: Thu, 20 Nov 2008 09:23:54 +0100 Subject: [Aria-users] laptop connection to robot Message-ID: <49251E9A.5040201@rumms.uni-mannheim.de> Hallo! I am using a laptop to drive the Pioneer P3-DX through a USB to serial connection, as my laptop doesn't have a serial port. However i fail to connect to the robot, though i tried to install some USB controller for it. any help?! Regards, Sherine Mannheim, Germany From joe.sfeir at gmail.com Thu Nov 20 10:18:16 2008 From: joe.sfeir at gmail.com (Joe Sfeir) Date: Thu, 20 Nov 2008 11:18:16 -0400 Subject: [Aria-users] Sonar readings and LRF Message-ID: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> Hi, I am using a P3AT for navigation. I use ARIA to execute my algorithm. I am having a few problems regarding obstacle detection: I only use sonars. And the readings are very, very noisy! is there a way to get cleaner readings? is there an averaging function integrated or something? or if you know a way of treating the signal to clean it? Also, if I want to use the LRF: the robot has an onboard computer, but I am not using it. the LRF doesn't seem to get power when then onboard computer is OFF. Is there a way I can give power to the LRF through ARIA from my client computer? maybe if I connect directly to the aux power? and if so, how can I connect to it and get its readings? If you have other suggestions on detecting obstacles cleanly and easily, don't hesitate :) Thanks for your help! Joe. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081120/f520d6f1/attachment-0001.html From mjohnson at ihmc.us Thu Nov 20 10:22:10 2008 From: mjohnson at ihmc.us (Matthew Johnson) Date: Thu, 20 Nov 2008 09:22:10 -0600 Subject: [Aria-users] laptop connection to robot In-Reply-To: <49251E9A.5040201@rumms.uni-mannheim.de> References: <49251E9A.5040201@rumms.uni-mannheim.de> Message-ID: <0DF6ECCC9243410B885B377C63C68B35@mjdell> First, figure out if your USB to serial is working. On windows go to your control panel -> system properties -> hardware -> device manager and look at the communication ports. When you plug your USB in it should show up as a com port. It is usually COM3 or higher. Note the com port number and use this to connect to Aria. You can use Aria's ArgParser with ArSimpleConnector to connect. Matt -----Original Message----- From: aria-users-bounces at lists.mobilerobots.com [mailto:aria-users-bounces at lists.mobilerobots.com] On Behalf Of sherine Sent: Thursday, November 20, 2008 2:24 AM To: Aria-users at lists.mobilerobots.com Subject: [Aria-users] laptop connection to robot Hallo! I am using a laptop to drive the Pioneer P3-DX through a USB to serial connection, as my laptop doesn't have a serial port. However i fail to connect to the robot, though i tried to install some USB controller for it. any help?! Regards, Sherine Mannheim, Germany _______________________________________________ Aria-users mailing list Aria-users at lists.mobilerobots.com http://lists.mobilerobots.com/mailman/listinfo/aria-users To unsubscribe visit the above webpage or send an e-mail to: aria-users-leave at lists.mobilerobots.com From mjohnson at ihmc.us Thu Nov 20 10:28:48 2008 From: mjohnson at ihmc.us (Matthew Johnson) Date: Thu, 20 Nov 2008 09:28:48 -0600 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> Message-ID: <9AC58C9A89B64175B781527B94D30B56@mjdell> Joe, Welcome to the world of sonar. It is notoriously noisy and inaccurate. You can filter some, but it won't help much. LRF is a reasonable solution. LRF significantly better than sonar. If you have one.use it. You can power it directly from the AUX. I will let the ActivMedia folks fill in how to get readings. Matt _____ From: aria-users-bounces at lists.mobilerobots.com [mailto:aria-users-bounces at lists.mobilerobots.com] On Behalf Of Joe Sfeir Sent: Thursday, November 20, 2008 9:18 AM To: aria-users at mobilerobots.com Subject: [Aria-users] Sonar readings and LRF Hi, I am using a P3AT for navigation. I use ARIA to execute my algorithm. I am having a few problems regarding obstacle detection: I only use sonars. And the readings are very, very noisy! is there a way to get cleaner readings? is there an averaging function integrated or something? or if you know a way of treating the signal to clean it? Also, if I want to use the LRF: the robot has an onboard computer, but I am not using it. the LRF doesn't seem to get power when then onboard computer is OFF. Is there a way I can give power to the LRF through ARIA from my client computer? maybe if I connect directly to the aux power? and if so, how can I connect to it and get its readings? If you have other suggestions on detecting obstacles cleanly and easily, don't hesitate :) Thanks for your help! Joe. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081120/8a1f5dd1/attachment.html From luxionghui at gmail.com Thu Nov 20 10:50:03 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Thu, 20 Nov 2008 10:50:03 -0500 Subject: [Aria-users] Question about setTransAccel() In-Reply-To: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> References: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> Message-ID: <70655cbf0811200750s498d4c50r8c3f21ee725ee472@mail.gmail.com> It is weird that sometimes when I set different acceleration value, I can see the speed up difference when making robot move, but sometimes it is not. Furthermore, sometimes, when I keep the value the same, the robot speeds up in a abvious different accelration value. Anybody can tell me why? Thanks! FILE *f; f = fopen("data.txt","w"); robot.lock(); robot.setTransAccel(10); robot.setVel(100); robot.unlock(); start.setToNow(); while (1) { fprintf(f,"Instant: %4d\tCur Line velo: %4.2f\t Cur Rota velo: %4.2f\t Cur Trans Acce: %4.2f\t,Cur Rota Acce: %4.2f\t,cur pos, x: %4.2f\t, y: %4.2f\n",start.mSecSince(), robot.getVel(),robot.getRotVel(), robot.getTransAccel(),robot.getRotAccel(), robot.getPose().getX(), robot.getPose().getY()); robot.lock(); if (start.mSecSince() > 5000) { printf("Distance timed out\n"); robot.unlock(); break; } robot.unlock(); ArUtil::sleep(10); } On Mon, Nov 17, 2008 at 9:45 PM, Xionghui Lu wrote: > Hi, I have a question, what is the unit of the acceleration values > assigned? I want to set a contant velocity and make the robot speed up to > this value with fixed acceleration value. But it seems that no matter how > small the acceleration is, the robot still can speed up to the given > velocity very quickly. (I want to see the slowly speed up process so I can > calculate accelration based on realtime velovity and compare it with > acceleration value set) > Besides, I found that a new function setMaxTransAccel() is added to newer > version of Aria, but the aria I am using doesn't contain this function. Does > hardware I am with support the new version of Aria? Thanks and what is this > function for? Set the maximum acceleration value? What's that mean? That > means setting acceleration value using setTransAccel() to a value bigger > than this value is forbidden? I am confused. > Thanks! > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081120/5e6523ec/attachment.html From luxionghui at gmail.com Thu Nov 20 11:38:30 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Thu, 20 Nov 2008 11:38:30 -0500 Subject: [Aria-users] Question about setTransAccel() In-Reply-To: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> References: <70655cbf0811171845pc5d6bb0v6e940dc33569c5e3@mail.gmail.com> Message-ID: <70655cbf0811200838n2e29580dj1995b9a4fe8d9689@mail.gmail.com> Hi, I am sure ARIA I am using is the old version since I didn't see setMaxTransAccel() function. So my question is, how large the old robot's accceleration value could be set? Thanks. On Mon, Nov 17, 2008 at 9:45 PM, Xionghui Lu wrote: > Hi, I have a question, what is the unit of the acceleration values > assigned? I want to set a contant velocity and make the robot speed up to > this value with fixed acceleration value. But it seems that no matter how > small the acceleration is, the robot still can speed up to the given > velocity very quickly. (I want to see the slowly speed up process so I can > calculate accelration based on realtime velovity and compare it with > acceleration value set) > Besides, I found that a new function setMaxTransAccel() is added to newer > version of Aria, but the aria I am using doesn't contain this function. Does > hardware I am with support the new version of Aria? Thanks and what is this > function for? Set the maximum acceleration value? What's that mean? That > means setting acceleration value using setTransAccel() to a value bigger > than this value is forbidden? I am confused. > Thanks! > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081120/41222a0c/attachment.html From enghemin at yahoo.com Sat Nov 22 09:22:18 2008 From: enghemin at yahoo.com (Hemin Sh.Aumer) Date: Sat, 22 Nov 2008 06:22:18 -0800 (PST) Subject: [Aria-users] Using Aria in MFC Applications Message-ID: <221473.22962.qm@web56208.mail.re3.yahoo.com> Hello Aria-Users, Any body has every tried to use Aria with MFC applications? Why there are conflicts between area and MFC? when Aria.h included in?an MFC application error?appear?such as "error C3861: 'timeGetTime': identifier not found".!! Any ideas where exactly Aria headers should be located and included? ? Regards.. ? Hemin Sh. Omer Nottingham, UK www.hemin.co.uk -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081122/e0b2c690/attachment-0001.html From srady at rumms.uni-mannheim.de Sat Nov 22 13:00:27 2008 From: srady at rumms.uni-mannheim.de (sherine) Date: Sat, 22 Nov 2008 19:00:27 +0100 Subject: [Aria-users] Aria-C++ compatibility? Message-ID: <492848BB.2060300@rumms.uni-mannheim.de> Hello! I am writing my first simple program to connect to Pioneer 3P-DX through VC++ 2008 environment.. I know that for compatibility issues the Aria libraries need to be rebuild again. I did so which was fine.. however i get the following error when executing my program: LINK : fatal error LNK1104: cannot open file 'Aria.lib' though i define the path of the ARIA library in the LINKER. The PATH environment variable as well includes Aria's bin directory for the dll file... Is there something that i might not know about the compatibility of the used version? or may be another? regards, Sherine From waji3000 at 163.com Sun Nov 23 03:39:11 2008 From: waji3000 at 163.com (waji3000) Date: Sun, 23 Nov 2008 16:39:11 +0800 (CST) Subject: [Aria-users] Using Aria in MFC Applications In-Reply-To: <221473.22962.qm@web56208.mail.re3.yahoo.com> References: <221473.22962.qm@web56208.mail.re3.yahoo.com> Message-ID: <31909434.194441227429551850.JavaMail.coremail@bj163app131.163.com> To solve the problem, please follow steps as follow: 1. Add a new head file named Win32OS.h to Aria project the content of the file as: #ifndef ___WIN32OS_H__ #define ___WIN32OS_H__ #define WIN32_LEAN_AND_MEAN #include #include #endif 2.modify the file ariaUtil.h #ifndef ARIAUTIL_H #define ARIAUTIL_H #define _GNU_SOURCE 1 #include // #define _XOPEN_SOURCE 500 #include #include #include #if defined(_WIN32) || defined(WIN32) #include #include #include "Win32OS.h" #else #include #include #include #include #endif // ifndef win32 #include #include "ariaTypedefs.h" #include "ArLog.h" #include "ArFunctor.h" #include "ArArgumentParser.h" //#include "ariaInternal.h" #include "ariaOSDef.h" #ifndef M_PI #define M_PI 3.1415927 #endif // of M_PI, windows has a function call instead of a define 3.Rebulid the project. then it will work. Hello Aria-Users, Any body has every tried to use Aria with MFC applications? Why there are conflicts between area and MFC? when Aria.h included in an MFC application error appear such as "error C3861: 'timeGetTime': identifier not found".!! Any ideas where exactly Aria headers should be located and included? Regards.. Hemin Sh. Omer Nottingham, UK www.hemin.co.uk -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081123/893f5ace/attachment.html From charif at gmx.net Sun Nov 23 06:32:22 2008 From: charif at gmx.net (Charif Moussa) Date: Sun, 23 Nov 2008 12:32:22 +0100 Subject: [Aria-users] ArSick and Matlab Message-ID: <20081123113222.196590@gmx.net> Hello, I am using Aria with Matlab and tried to activate the ArSonarDevice and ArSick at the same time. I have integrated ArSick in my code, but until now MobileSim won't use the Laser. If someone knows, whats the problem, please let me know. Enclosed you will find the code: (added lines for Sick surrounded with //) #include #include // All active robot connections are stored in the cnxTable static int num_robots = 0; #define MAX_ROBOTS 10 struct { ArRobot *robot; ArSimpleConnector *connector; } cnxTable[MAX_ROBOTS]; static void robot_connect(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { int i; char *addr; ArRobot *robot; //////////////// ArSick *sick; //////////////// ArArgumentBuilder builder; ArSimpleConnector *connector; ArSonarDevice *sonar; ArActionStallRecover recover; ArActionBumpers bumpers; ArActionAvoidFront avoidFrontNear("Avoid Front Near", 225, 0); ArActionAvoidFront avoidFrontFar; ArActionConstantVelocity constantVelocity("Constant Velocity", 100); if (num_robots == MAX_ROBOTS) { mexErrMsgTxt("MAX_ROBOTS reached"); } if (mxGetM(prhs[1]) != 1 || !mxIsChar(prhs[1])) { mexErrMsgTxt("The second rhs argument has to be a string."); } // Build the temporary remoteHost string addr = new char[13 + mxGetN(prhs[1])]; strcpy(addr, "-remoteHost "); mxGetString(prhs[1], addr + 12, mxGetN(prhs[1]) + 1); builder.add(addr); // Destroy any existing connection to this robot robot = Aria::findRobot(addr); if(robot) { for (i = 0; i < MAX_ROBOTS; i++) { if (cnxTable[i].robot == robot) { mexPrintf("disconnecting stale connection %d\n", i); cnxTable[i].robot->stopRunning(); delete cnxTable[i].robot; delete cnxTable[i].connector; cnxTable[i].robot = NULL; break; } } } connector = new ArSimpleConnector(&builder); robot = new ArRobot(addr); delete [] addr; if (!connector->parseArgs()) { delete robot; delete connector; mexErrMsgTxt("parseArgs failed"); } robot->addRangeDevice(new ArSonarDevice()); /////////////////////// robot->addRangeDevice(&sick); /////////////////////// if (!connector->connectRobot(robot)) { delete robot; delete connector; mexErrMsgTxt("connection failed"); } robot->comInt(ArCommands::SOUNDTOG, 0); robot->comInt(ArCommands::SONAR, 1); robot->comInt(ArCommands::ENABLE, 1); robot->setAbsoluteMaxTransVel(200); robot->setAbsoluteMaxRotVel(50); robot->runAsync(true); ////////////////////////// connector->setupLaser(&sick); sick->runAsync(); ///////////////////////// // Add to the connection table for(i = 0; i < MAX_ROBOTS; i++) { if (cnxTable[i].robot == NULL) { cnxTable[i].robot = robot; cnxTable[i].connector = connector; break; } } plhs[0] = mxCreateDoubleMatrix(1, 1, mxREAL); *((double *)mxGetPr(plhs[0])) = i; } -- Psssst! Schon vom neuen GMX MultiMessenger geh?rt? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger From work.chandan at gmail.com Sun Nov 23 08:58:54 2008 From: work.chandan at gmail.com (Chandan Datta) Date: Sun, 23 Nov 2008 17:58:54 +0400 Subject: [Aria-users] Motion Commands using ArNetworking In-Reply-To: <50496.94210.qm@web56202.mail.re3.yahoo.com> References: <50496.94210.qm@web56202.mail.re3.yahoo.com> Message-ID: <2457b8930811230558g20c8422ck1546b76bf8a6e483@mail.gmail.com> Checkout my thread here ,as I had the same issue : http://lists.mobilerobots.com/pipermail/aria-users/2008-August/000175.html On Mon, Nov 17, 2008 at 2:52 PM, Hemin Sh.Aumer wrote: > Hello Aria-Users, > I am trying to send a basic motion command (ex. robot.setVel(100)) from a > remote PC running as a Client to the onboard PC running as a Server using > ArNetworking. The option that I found is using > -client.requestOnce("ratioDriving",&packet)- and sending parameters using > the packet. But how to find out if there is a way to send the motion > commands as if I was sending it from the onboard PC itself? or how to create > a service like "ratioDriving" to run on the server and use it to send > -robot.setVel() and robot.stop() for example? > > Any help will be appreciated... > > > > > *Hemin Sh. Omer* > > *Nottingham, UK* > > *www.hemin.co.uk* > > > > > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com > -- Regards, Chandan -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081123/b1f9ce44/attachment.html From enghemin at yahoo.com Mon Nov 24 06:09:59 2008 From: enghemin at yahoo.com (Hemin Sh.Aumer) Date: Mon, 24 Nov 2008 03:09:59 -0800 (PST) Subject: [Aria-users] Aria-C++ compatibility? References: <492848BB.2060300@rumms.uni-mannheim.de> Message-ID: <666611.14858.qm@web56206.mail.re3.yahoo.com> Hi there, I am using Visual Studio 2005 so not sure exactly what are the differnces but this error happends in 2005 if you haven't added the library file to the?directories of the projects.. more in detail.. go to tools-> options->?projects and solutions->visual C++ directories.. and on the right hand side select library files from the second drop down list..?and then add C:\Program Files\Mobilerobots\Aria\lib...?I am assuming that you have installed Aria in the default location and you are using Windows XP. I hope this is helpful... ? Hemin Sh. Omer Nottingham, UK www.hemin.co.uk ? ________________________________ From: sherine To: Aria-users at lists.mobilerobots.com Sent: Saturday, November 22, 2008 6:00:27 PM Subject: [Aria-users] Aria-C++ compatibility? Hello! I am writing my first simple program to connect to Pioneer 3P-DX through VC++ 2008 environment.. I know that for compatibility issues the Aria libraries need to be rebuild again. I did so which was fine.. however i get the following error when executing my program: LINK : fatal error LNK1104: cannot open file 'Aria.lib' though i define the path of the ARIA library in the LINKER. The PATH environment variable as well includes Aria's bin directory for the dll file... Is there something that i might not know about the compatibility of the used version? or may be another? regards, Sherine _______________________________________________ Aria-users mailing list Aria-users at lists.mobilerobots.com http://lists.mobilerobots.com/mailman/listinfo/aria-users To unsubscribe visit the above webpage or send an e-mail to: aria-users-leave at lists.mobilerobots.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081124/7392b495/attachment.html From ericavery at epix.net Mon Nov 24 09:33:06 2008 From: ericavery at epix.net (ericavery at epix.net) Date: Mon, 24 Nov 2008 09:33:06 -0500 Subject: [Aria-users] ArSick and Matlab Message-ID: <380-220081112414336833@M2W020.mail2web.com> You also need to connect to the laser, try adding a call to blockingConnect() just after you call runAsync(). The call will use the SimpleConnector to connect to the laser and block until the laser is powered up and scanning. heres the code i use to connect ArRobot robot; ArArgumentBuilder builder; builder.AddPlain("-laserincrement one"); ArSimpleConnector connector(builder); connector.parseArgs(); connector.connectRobot(&robot); Arsick laser; robot.addReangeDevice(&laser); connector.setupLaser(&laser); laser.runAsync(); laser.blockingConnect(); Hope this helps.. Eric Avery Original Message: ----------------- From: Charif Moussa charif at gmx.net Date: Sun, 23 Nov 2008 12:32:22 +0100 To: aria-users at lists.mobilerobots.com Subject: [Aria-users] ArSick and Matlab Hello, I am using Aria with Matlab and tried to activate the ArSonarDevice and ArSick at the same time. I have integrated ArSick in my code, but until now MobileSim won't use the Laser. If someone knows, whats the problem, please let me know. Enclosed you will find the code: (added lines for Sick surrounded with //) #include #include // All active robot connections are stored in the cnxTable static int num_robots = 0; #define MAX_ROBOTS 10 struct { ArRobot *robot; ArSimpleConnector *connector; } cnxTable[MAX_ROBOTS]; static void robot_connect(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { int i; char *addr; ArRobot *robot; //////////////// ArSick *sick; //////////////// ArArgumentBuilder builder; ArSimpleConnector *connector; ArSonarDevice *sonar; ArActionStallRecover recover; ArActionBumpers bumpers; ArActionAvoidFront avoidFrontNear("Avoid Front Near", 225, 0); ArActionAvoidFront avoidFrontFar; ArActionConstantVelocity constantVelocity("Constant Velocity", 100); if (num_robots == MAX_ROBOTS) { mexErrMsgTxt("MAX_ROBOTS reached"); } if (mxGetM(prhs[1]) != 1 || !mxIsChar(prhs[1])) { mexErrMsgTxt("The second rhs argument has to be a string."); } // Build the temporary remoteHost string addr = new char[13 + mxGetN(prhs[1])]; strcpy(addr, "-remoteHost "); mxGetString(prhs[1], addr + 12, mxGetN(prhs[1]) + 1); builder.add(addr); // Destroy any existing connection to this robot robot = Aria::findRobot(addr); if(robot) { for (i = 0; i < MAX_ROBOTS; i++) { if (cnxTable[i].robot == robot) { mexPrintf("disconnecting stale connection %d\n", i); cnxTable[i].robot->stopRunning(); delete cnxTable[i].robot; delete cnxTable[i].connector; cnxTable[i].robot = NULL; break; } } } connector = new ArSimpleConnector(&builder); robot = new ArRobot(addr); delete [] addr; if (!connector->parseArgs()) { delete robot; delete connector; mexErrMsgTxt("parseArgs failed"); } robot->addRangeDevice(new ArSonarDevice()); /////////////////////// robot->addRangeDevice(&sick); /////////////////////// if (!connector->connectRobot(robot)) { delete robot; delete connector; mexErrMsgTxt("connection failed"); } robot->comInt(ArCommands::SOUNDTOG, 0); robot->comInt(ArCommands::SONAR, 1); robot->comInt(ArCommands::ENABLE, 1); robot->setAbsoluteMaxTransVel(200); robot->setAbsoluteMaxRotVel(50); robot->runAsync(true); ////////////////////////// connector->setupLaser(&sick); sick->runAsync(); ///////////////////////// // Add to the connection table for(i = 0; i < MAX_ROBOTS; i++) { if (cnxTable[i].robot == NULL) { cnxTable[i].robot = robot; cnxTable[i].connector = connector; break; } } plhs[0] = mxCreateDoubleMatrix(1, 1, mxREAL); *((double *)mxGetPr(plhs[0])) = i; } -- Psssst! Schon vom neuen GMX MultiMessenger geh?rt? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger _______________________________________________ Aria-users mailing list Aria-users at lists.mobilerobots.com http://lists.mobilerobots.com/mailman/listinfo/aria-users To unsubscribe visit the above webpage or send an e-mail to: aria-users-leave at lists.mobilerobots.com -------------------------------------------------------------------- mail2web.com ? Enhanced email for the mobile individual based on Microsoft? Exchange - http://link.mail2web.com/Personal/EnhancedEmail From reed at mobilerobots.com Mon Nov 24 10:45:05 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Mon, 24 Nov 2008 10:45:05 -0500 Subject: [Aria-users] Using Aria in MFC Applications In-Reply-To: <221473.22962.qm@web56208.mail.re3.yahoo.com> References: <221473.22962.qm@web56208.mail.re3.yahoo.com> Message-ID: <492ACC01.7070501@mobilerobots.com> Hemin Sh.Aumer wrote: > Hello Aria-Users, > Any body has every tried to use Aria with MFC applications? Why there > are conflicts between area and MFC? when Aria.h included in an MFC > application error appear such as "error C3861: 'timeGetTime': identifier > not found".!! > Any ideas where exactly Aria headers should be located and included? > Hi, try adding #include To the top of ariaUtil.cpp. It sounds like for some reason MFC or a compiler option is preventing the declaration of timeGetTime() from being included elsewhere. (You may also have to #include before mmsystem.h.) Or add these to the top of your program if you don't want to modify ARIA. If this work for you I can make the change permanent in ARIA for the next release. Reed From luxionghui at gmail.com Mon Nov 24 21:17:25 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 24 Nov 2008 21:17:25 -0500 Subject: [Aria-users] Fwd: Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811211541y5836ec85y7e9c664c52cdcfd4@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> <70655cbf0811211541y5836ec85y7e9c664c52cdcfd4@mail.gmail.com> Message-ID: <70655cbf0811241817h14841ed4j1299697225471291@mail.gmail.com> I have a question, since we are doing control research for robot, so we want to know exactly how much current acceleration value is, so I intend to calculate that based on velocity reading( from encoder). Here is the problem, I noticed that whenever I change the acceleration value and in the same time ask the robot to speed up to a desired new velocity under this acceleration value, I see big jerk happens (see attached picture, ignore the first figure, the second figure is comparison of setting acceleration value and calculated acceleration value (derivative encoder reading velocity)). We can see huge jump when the robot is changing acceleration value. (I set accel to 10 at 0-2 sec, 50 (2-4sec), -40(4-6sec), and 10(6-8sec)) , which is undesirable. SO could you give me some clue how to avoid of reduce this phenomenon? I tried change acceleration value gradually, but it gets worsen. Thanks very much! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081124/9ec28bf8/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: jerk.JPG Type: image/jpeg Size: 53921 bytes Desc: not available Url : http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081124/9ec28bf8/attachment-0001.jpe From luxionghui at gmail.com Mon Nov 24 21:32:58 2008 From: luxionghui at gmail.com (Xionghui Lu) Date: Mon, 24 Nov 2008 21:32:58 -0500 Subject: [Aria-users] Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811241817h14841ed4j1299697225471291@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> <70655cbf0811211541y5836ec85y7e9c664c52cdcfd4@mail.gmail.com> <70655cbf0811241817h14841ed4j1299697225471291@mail.gmail.com> Message-ID: <70655cbf0811241832t5486ccd6x70dc1ca684b58dd7@mail.gmail.com> that is, how to apply a hard limiter to jerk(derivative of acceleration)? thanks. On Mon, Nov 24, 2008 at 9:17 PM, Xionghui Lu wrote: > I have a question, since we are doing control research for robot, so we > want to know exactly how much current acceleration value is, so I intend to > calculate that based on velocity reading( from encoder). Here is the > problem, I noticed that whenever I change the acceleration value and in the > same time ask the robot to speed up to a desired new velocity under this > acceleration value, I see big jerk happens (see attached picture, ignore the > first figure, the second figure is comparison of setting acceleration value > and calculated acceleration value (derivative encoder reading velocity)). We > can see huge jump when the robot is changing acceleration value. (I set > accel to 10 at 0-2 sec, 50 (2-4sec), -40(4-6sec), and 10(6-8sec)) , which is > undesirable. SO could you give me some clue how to avoid of reduce this > phenomenon? I tried change acceleration value gradually, but it gets worsen. > Thanks very much! > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081124/d2ba383b/attachment.html From joe.sfeir at gmail.com Tue Nov 25 01:44:02 2008 From: joe.sfeir at gmail.com (Joe Sfeir) Date: Tue, 25 Nov 2008 02:44:02 -0400 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> Message-ID: <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> I am using a P3AT for navigation. I use ARIA to execute my algorithm. I am having a few problems regarding obstacle detection: I only use sonars. And the readings are very, very noisy! is there a way to get cleaner readings? is there an averaging function integrated or something? or if you know a way of treating the signal to clean it? Also, if I want to use the LRF: the robot has an onboard computer, but I am not using it. the LRF doesn't seem to get power when then onboard computer is OFF. Is there a way I can give power to the LRF through ARIA from my client computer? maybe if I connect directly to the aux power? and if so, how can I connect to it and get its readings? If you have other suggestions on detecting obstacles cleanly and easily, don't hesitate :) Thanks for your help! Joe. ---------- Forwarded message ---------- From: Joe Sfeir Date: Thu, Nov 20, 2008 at 11:35 PM Subject: Re: [Aria-users] Sonar readings and LRF To: Matthew Johnson Matt, Thanks for your input. Waiting for ActivMedia's info... Joe. On Thu, Nov 20, 2008 at 11:28 AM, Matthew Johnson wrote: > Joe, > > > > Welcome to the world of sonar. It is notoriously noisy and inaccurate. > You can filter some, but it won't help much. LRF is a reasonable > solution. LRF significantly better than sonar. If you have one?use it. > You can power it directly from the AUX. I will let the ActivMedia folks > fill in how to get readings. > > > > Matt > > > > > ------------------------------ > > *From:* aria-users-bounces at lists.mobilerobots.com [mailto: > aria-users-bounces at lists.mobilerobots.com] *On Behalf Of *Joe Sfeir > *Sent:* Thursday, November 20, 2008 9:18 AM > *To:* aria-users at mobilerobots.com > *Subject:* [Aria-users] Sonar readings and LRF > > > > Hi, > > > > I am using a P3AT for navigation. I use ARIA to execute my algorithm. I am > having a few problems regarding obstacle detection: I only use sonars. And > the readings are very, very noisy! is there a way to get cleaner readings? > is there an averaging function integrated or something? or if you know a way > of treating the signal to clean it? > > > > Also, if I want to use the LRF: the robot has an onboard computer, but I am > not using it. the LRF doesn't seem to get power when then onboard computer > is OFF. Is there a way I can give power to the LRF through ARIA from my > client computer? maybe if I connect directly to the aux power? and if so, > how can I connect to it and get its readings? > > > > If you have other suggestions on detecting obstacles cleanly and easily, > don't hesitate :) > > > > Thanks for your help! > > > > Joe. > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081125/2cbb0108/attachment.html From joe.sfeir at gmail.com Tue Nov 25 02:01:02 2008 From: joe.sfeir at gmail.com (Joe Sfeir) Date: Tue, 25 Nov 2008 03:01:02 -0400 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <492BA1EF.9090709@iiit.ac.in> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> Message-ID: <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> Thanks for the article, I'll look into it to improve my results. Do you have an idea on how I can connect to and get the laser range finder readings? Thanks. On Tue, Nov 25, 2008 at 2:57 AM, Madhava Krishna wrote: > Sonars have that problem, there's no easy way out. I am sending our IJCAI > paper of ours so that you get an idea > > Madhav > > Joe Sfeir wrote: > > I am using a P3AT for navigation. I use ARIA to execute my algorithm. I >> am having a few problems regarding obstacle detection: I only use sonars. >> And the readings are very, very noisy! is there a way to get cleaner >> readings? is there an averaging function integrated or something? or if you >> know a way of treating the signal to clean it? >> Also, if I want to use the LRF: the robot has an onboard computer, but I >> am not using it. the LRF doesn't seem to get power when then onboard >> computer is OFF. Is there a way I can give power to the LRF through ARIA >> from my client computer? maybe if I connect directly to the aux power? and >> if so, how can I connect to it and get its readings? >> If you have other suggestions on detecting obstacles cleanly and easily, >> don't hesitate :) >> Thanks for your help! >> Joe. >> >> ---------- Forwarded message ---------- >> From: *Joe Sfeir* > >> Date: Thu, Nov 20, 2008 at 11:35 PM >> Subject: Re: [Aria-users] Sonar readings and LRF >> To: Matthew Johnson > >> >> >> Matt, >> Thanks for your input. Waiting for ActivMedia's info... >> >> Joe. >> On Thu, Nov 20, 2008 at 11:28 AM, Matthew Johnson > mjohnson at ihmc.us>> wrote: >> >> Joe, >> >> >> Welcome to the world of sonar. It is notoriously noisy and >> inaccurate. You can filter some, but it won't help much. LRF is >> a reasonable solution. LRF significantly better than sonar. If >> you have one?use it. You can power it directly from the AUX. I >> will let the ActivMedia folks fill in how to get readings. >> >> >> Matt >> >> >> >> >> ------------------------------------------------------------------------ >> >> *From:* aria-users-bounces at lists.mobilerobots.com >> >> [mailto:aria-users-bounces at lists.mobilerobots.com >> ] *On Behalf Of >> *Joe Sfeir >> *Sent:* Thursday, November 20, 2008 9:18 AM >> *To:* aria-users at mobilerobots.com >> >> *Subject:* [Aria-users] Sonar readings and LRF >> >> >> Hi, >> >> >> I am using a P3AT for navigation. I use ARIA to execute my >> algorithm. I am having a few problems regarding obstacle >> detection: I only use sonars. And the readings are very, very >> noisy! is there a way to get cleaner readings? is there an >> averaging function integrated or something? or if you know a way >> of treating the signal to clean it? >> >> >> Also, if I want to use the LRF: the robot has an onboard computer, >> but I am not using it. the LRF doesn't seem to get power when then >> onboard computer is OFF. Is there a way I can give power to the >> LRF through ARIA from my client computer? maybe if I connect >> directly to the aux power? and if so, how can I connect to it and >> get its readings? >> >> >> If you have other suggestions on detecting obstacles cleanly and >> easily, don't hesitate :) >> >> >> Thanks for your help! >> >> >> Joe. >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Aria-users mailing list >> Aria-users at lists.mobilerobots.com >> http://lists.mobilerobots.com/mailman/listinfo/aria-users >> >> To unsubscribe visit the above webpage or send an e-mail to: >> >> aria-users-leave at lists.mobilerobots.com >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081125/408badd9/attachment-0001.html From enghemin at yahoo.com Tue Nov 25 13:03:03 2008 From: enghemin at yahoo.com (Hemin Sh.Aumer) Date: Tue, 25 Nov 2008 10:03:03 -0800 (PST) Subject: [Aria-users] Yahoo Groups for Aria-users and Pioneer-users Message-ID: <575305.91146.qm@web56205.mail.re3.yahoo.com> Aria and Pioneer Fellows; I have created two yahoo groups for each of Aria users and Pioneer users if you would like to join. We will enjoy the advantage of posting messages and surfing them in the future for future users. I can see that some of the messges in these lists are repeated since we don't access posted messages in the past. Group homepages:? http://groups.yahoo.com/group/pioneer-users? and http://groups.yahoo.com/group/aria-users Best Regards Hemin Sh. Omer Nottingham, UK www.hemin.co.uk -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081125/8903941b/attachment.html From lafary at mobilerobots.com Tue Nov 25 16:14:34 2008 From: lafary at mobilerobots.com (Matt LaFary) Date: Tue, 25 Nov 2008 16:14:34 -0500 Subject: [Aria-users] Yahoo Groups for Aria-users and Pioneer-users In-Reply-To: <575305.91146.qm@web56205.mail.re3.yahoo.com> References: <575305.91146.qm@web56205.mail.re3.yahoo.com> Message-ID: <492C6ABA.9010906@mobilerobots.com> There's always been archives and the ability to search the archives for both aria-users and pioneer-users since the beginning. You can get to the archives from our support site http://robots.mobilerobots.com. We'll see about putting a link for searching the archive into the mailing list footer and/or making the archives more obvious somehow. The easiest way to search the aria-users archive is the search box on: http://robots.mobilerobots.com/wiki/Aria-users_Mailing_List The easiest way to search the pioneer-users archive is the search box on: http://robots.mobilerobots.com/wiki/Pioneer-users_Mailing_List I'd also like to remind people that our support site is now a Wiki and that you can search it by the box on the left of the support site http://robots.mobilerobots.com We've set up some answers to frequently asked questions on it (with more to come) and we've set aside an area for users to edit and contribute. There are more details at: http://robots.mobilerobots.com/wiki/Adding_to_this_Site Thanks, Matt LaFary MobileRobots Inc Hemin Sh.Aumer wrote: > Aria and Pioneer Fellows; > I have created two yahoo groups for each of Aria users and Pioneer users if you would like to join. We will enjoy the advantage of posting messages and surfing them in the future for future users. I can see that some of the messges in these lists are repeated since we don't access posted messages in the past. > Group homepages: http://groups.yahoo.com/group/pioneer-users and http://groups.yahoo.com/group/aria-users > > Best Regards > > > Hemin Sh. Omer > Nottingham, UK > www.hemin.co.uk > > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com From reed at mobilerobots.com Tue Nov 25 18:36:26 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 25 Nov 2008 18:36:26 -0500 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> Message-ID: <492C8BFA.4020406@mobilerobots.com> Hi Joe, The power to the SICK is switched by the RTS line on the serial connection from the onboard computer. If you connect this cable to your other computer instead of the onboard computer, it should work. If this is how you've connected your other computer and it's not working, contact support (support at mobilerobots.com; include your robot's serial number) and they can help you troubleshoot. To connect to the SICK from Aria, use the ArSimpleConnector and ArSick classes. See examples/sickTeleop.cpp or examples/sickRobotExample.cpp for an example. Reed Joe Sfeir wrote: > Thanks for the article, I'll look into it to improve my results. > > Do you have an idea on how I can connect to and get the laser range finder > readings? > > Thanks. > > On Tue, Nov 25, 2008 at 2:57 AM, Madhava Krishna wrote: > >> Sonars have that problem, there's no easy way out. I am sending our IJCAI >> paper of ours so that you get an idea >> >> Madhav >> >> Joe Sfeir wrote: >> >> I am using a P3AT for navigation. I use ARIA to execute my algorithm. I >>> am having a few problems regarding obstacle detection: I only use sonars. >>> And the readings are very, very noisy! is there a way to get cleaner >>> readings? is there an averaging function integrated or something? or if you >>> know a way of treating the signal to clean it? >>> Also, if I want to use the LRF: the robot has an onboard computer, but I >>> am not using it. the LRF doesn't seem to get power when then onboard >>> computer is OFF. Is there a way I can give power to the LRF through ARIA >>> from my client computer? maybe if I connect directly to the aux power? and >>> if so, how can I connect to it and get its readings? >>> If you have other suggestions on detecting obstacles cleanly and easily, >>> don't hesitate :) >>> Thanks for your help! >>> Joe. From reed at mobilerobots.com Tue Nov 25 18:46:25 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Tue, 25 Nov 2008 18:46:25 -0500 Subject: [Aria-users] Fwd: Fwd: Anybody knows how Aria calculates velocity and accelleration of the robot based on encoder? In-Reply-To: <70655cbf0811241817h14841ed4j1299697225471291@mail.gmail.com> References: <70655cbf0811100857m35ef0c15p15bdcd14f64217ea@mail.gmail.com> <70655cbf0811100901u77955b0dpfa89c8d428859d09@mail.gmail.com> <491A3091.4030008@mobilerobots.com> <491A370C.4080806@mobilerobots.com> <70655cbf0811211541y5836ec85y7e9c664c52cdcfd4@mail.gmail.com> <70655cbf0811241817h14841ed4j1299697225471291@mail.gmail.com> Message-ID: <492C8E51.9080508@mobilerobots.com> In your graph, what does each line represent? When you change the acceleration value, what new VEL value are you sending? Also, when you say you set accel to -40, are you actually setting the "decel" value to 40 instead (they are separate values)? Reed Xionghui Lu wrote: > I have a question, since we are doing control research for robot, so we > want to know exactly how much current acceleration value is, so I intend to > calculate that based on velocity reading( from encoder). Here is the > problem, I noticed that whenever I change the acceleration value and in the > same time ask the robot to speed up to a desired new velocity under this > acceleration value, I see big jerk happens (see attached picture, ignore the > first figure, the second figure is comparison of setting acceleration value > and calculated acceleration value (derivative encoder reading velocity)). We > can see huge jump when the robot is changing acceleration value. (I set > accel to 10 at 0-2 sec, 50 (2-4sec), -40(4-6sec), and 10(6-8sec)) , which is > undesirable. SO could you give me some clue how to avoid of reduce this > phenomenon? I tried change acceleration value gradually, but it gets worsen. > Thanks very much! > > > > ------------------------------------------------------------------------ > > > ------------------------------------------------------------------------ > > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com From joe.sfeir at gmail.com Tue Nov 25 22:56:46 2008 From: joe.sfeir at gmail.com (Joe Sfeir) Date: Tue, 25 Nov 2008 23:56:46 -0400 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <492C8BFA.4020406@mobilerobots.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> <492C8BFA.4020406@mobilerobots.com> Message-ID: <6393b71e0811251956r323044ddv6b56f51d8d4d75c3@mail.gmail.com> Hi Reed, You mean it's a physical cable? The other computer is not on the robot; I am connecting to the robot directly via wireless serial connection. Or is it a command I send to the microcontroller to activate the line? How can I keep this line active at all times? can I power it directly from the Aux power? is it compatible electrically? Thanks. Joe. On Tue, Nov 25, 2008 at 7:36 PM, Reed Hedges wrote: > > Hi Joe, > > The power to the SICK is switched by the RTS line on the serial > connection from the onboard computer. If you connect this cable to your > other computer instead of the onboard computer, it should work. If this > is how you've connected your other computer and it's not working, > contact support (support at mobilerobots.com; include your robot's serial > number) and they can help you troubleshoot. > > To connect to the SICK from Aria, use the ArSimpleConnector and ArSick > classes. See examples/sickTeleop.cpp or examples/sickRobotExample.cpp > for an example. > > Reed > > > Joe Sfeir wrote: > > Thanks for the article, I'll look into it to improve my results. > > > > Do you have an idea on how I can connect to and get the laser range > finder > > readings? > > > > Thanks. > > > > On Tue, Nov 25, 2008 at 2:57 AM, Madhava Krishna >wrote: > > > >> Sonars have that problem, there's no easy way out. I am sending our > IJCAI > >> paper of ours so that you get an idea > >> > >> Madhav > >> > >> Joe Sfeir wrote: > >> > >> I am using a P3AT for navigation. I use ARIA to execute my algorithm. I > >>> am having a few problems regarding obstacle detection: I only use > sonars. > >>> And the readings are very, very noisy! is there a way to get cleaner > >>> readings? is there an averaging function integrated or something? or if > you > >>> know a way of treating the signal to clean it? > >>> Also, if I want to use the LRF: the robot has an onboard computer, but > I > >>> am not using it. the LRF doesn't seem to get power when then onboard > >>> computer is OFF. Is there a way I can give power to the LRF through > ARIA > >>> from my client computer? maybe if I connect directly to the aux power? > and > >>> if so, how can I connect to it and get its readings? > >>> If you have other suggestions on detecting obstacles cleanly and > easily, > >>> don't hesitate :) > >>> Thanks for your help! > >>> Joe. > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081125/268b2eb2/attachment.html From reed at mobilerobots.com Wed Nov 26 09:44:21 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Wed, 26 Nov 2008 09:44:21 -0500 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <6393b71e0811251956r323044ddv6b56f51d8d4d75c3@mail.gmail.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> <492C8BFA.4020406@mobilerobots.com> <6393b71e0811251956r323044ddv6b56f51d8d4d75c3@mail.gmail.com> Message-ID: <492D60C5.3000101@mobilerobots.com> Joe Sfeir wrote: > Hi Reed, > > You mean it's a physical cable? The other computer is not on the robot; Yes, the SICK is connected to the onboard computer on a separate serial line than the robot. So if you are connecting wirelessly to the robot, you also need to set up a separate, similar wireless connection to the SICK. How is your offboard computer connected to the robot? Are you using an ethernet-serial bridge device (like these: http://robots.mobilerobots.com/wiki/Lantronix_WiBox_ethernet-serial_bridge), or are you running a program on the onboard computer to relay the connection? (By the way, if you have an onboard computer we generally recommend using it for your primary robot and sensor software, since you get the best performance that way and avoid problems from latency etc. on the network.) Reed From joe.sfeir at gmail.com Wed Nov 26 09:53:37 2008 From: joe.sfeir at gmail.com (Joe Sfeir) Date: Wed, 26 Nov 2008 10:53:37 -0400 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <492D60C5.3000101@mobilerobots.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> <492C8BFA.4020406@mobilerobots.com> <6393b71e0811251956r323044ddv6b56f51d8d4d75c3@mail.gmail.com> <492D60C5.3000101@mobilerobots.com> Message-ID: <6393b71e0811260653u6a8b07e4rabd12ea668a2db0f@mail.gmail.com> I see... I am using a blue tooth air cable to connect the robot to the offboard computer... So I guess I have to do the same type of connection to a different port on my computer... I am bypassing the onboard computer because it operates on linux, but I am using a tool on the client computer that is developed on windows... And I never worked with linux... so I can't really use the onboard computer... Thanks for your help! Joe. On Wed, Nov 26, 2008 at 10:44 AM, Reed Hedges wrote: > Joe Sfeir wrote: > > Hi Reed, > > > > You mean it's a physical cable? The other computer is not on the robot; > > Yes, the SICK is connected to the onboard computer on a separate serial > line > than the robot. So if you are connecting wirelessly to the robot, you also > need > to set up a separate, similar wireless connection to the SICK. How is > your > offboard computer connected to the robot? Are you using an ethernet-serial > bridge device (like these: > http://robots.mobilerobots.com/wiki/Lantronix_WiBox_ethernet-serial_bridge), > or > are you running a program on the onboard computer to relay the connection? > > (By the way, if you have an onboard computer we generally recommend using > it for > your primary robot and sensor software, since you get the best performance > that > way and avoid problems from latency etc. on the network.) > > Reed > > _______________________________________________ > Aria-users mailing list > Aria-users at lists.mobilerobots.com > http://lists.mobilerobots.com/mailman/listinfo/aria-users > > To unsubscribe visit the above webpage or send an e-mail to: > > aria-users-leave at lists.mobilerobots.com > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081126/987b3183/attachment-0001.html From reed at mobilerobots.com Wed Nov 26 10:02:33 2008 From: reed at mobilerobots.com (Reed Hedges) Date: Wed, 26 Nov 2008 10:02:33 -0500 Subject: [Aria-users] Sonar readings and LRF In-Reply-To: <6393b71e0811260653u6a8b07e4rabd12ea668a2db0f@mail.gmail.com> References: <6393b71e0811200718h2ebee016ldad4ff991a8a9c23@mail.gmail.com> <9AC58C9A89B64175B781527B94D30B56@mjdell> <6393b71e0811201935s41b3bfe8w5545096112b5b9d5@mail.gmail.com> <6393b71e0811242244s2cb6bce3y4d2c97af8798efd2@mail.gmail.com> <492BA1EF.9090709@iiit.ac.in> <6393b71e0811242301l71c7ac55r6bdfdb3b79141aff@mail.gmail.com> <492C8BFA.4020406@mobilerobots.com> <6393b71e0811251956r323044ddv6b56f51d8d4d75c3@mail.gmail.com> <492D60C5.3000101@mobilerobots.com> <6393b71e0811260653u6a8b07e4rabd12ea668a2db0f@mail.gmail.com> Message-ID: <492D6509.9050505@mobilerobots.com> Joe Sfeir wrote: > I see... > > I am using a blue tooth air cable to connect the robot to the offboard > computer... So I guess I have to do the same type of connection to a > different port on my computer... In ARIA programs, you can give a TCP port for the laser connection using the -remoteLaserTcpPort command line argument. Reed From srady at rumms.uni-mannheim.de Sat Nov 29 08:43:39 2008 From: srady at rumms.uni-mannheim.de (sherine) Date: Sat, 29 Nov 2008 14:43:39 +0100 Subject: [Aria-users] Motion control problem Message-ID: <4931470B.4020004@rumms.uni-mannheim.de> Hello! I am trying to write a simple program to move the robot a meter forwards, turn back 180 degrees, then move one meter through the following code..However the robot doesn t move, and I get the following error: ArRobotPacketReceiver::receivePacket: bad packet, bad checksum. I get this message after connecting with the robot. Is there something wrong in the code? I ve included the code as a whole, may be there is something i miss in the ordering of methods' call! p.s. By the way, any help on the difference between the 3 'ArSimpleConnector' constructors?! Regards, Sherine //CODE int _tmain(int argc, char* argv[]) { Aria::init(); ArRobot robot; ArKeyHandler keyHandler; Aria::setKeyHandler(&keyHandler); robot.attachKeyHandler(&keyHandler); ArSimpleConnector connector(&argc, argv); connector.parseArgs(); if (argc > 1) { connector.logOptions(); exit(1); } // try to connect, if fail exit if (!connector.connectRobot(&robot)) { printf("Could not connect to robot... exiting\n"); Aria::shutdown(); return 1; } robot.comInt(ArCommands::ENABLE, 1); robot.setHeading(0); ArUtil::sleep(5000); robot.move(1000); ArUtil::sleep(5000); robot.setHeading(180); ArUtil::sleep(5000); robot.move(1000); Aria::exit(0); } From enghemin at yahoo.com Sat Nov 29 09:00:43 2008 From: enghemin at yahoo.com (Hemin Sh.Aumer) Date: Sat, 29 Nov 2008 06:00:43 -0800 (PST) Subject: [Aria-users] Motion control problem References: <4931470B.4020004@rumms.uni-mannheim.de> Message-ID: <17351.171.qm@web56201.mail.re3.yahoo.com> Hi, You've missed to enable the motors and run the robot... Modify your code as this... see colored code added.... and try it again.... ?int _tmain(int argc, char* argv[]) { ? Aria::init(); ? ArRobot robot; ? ? ? ? ArKeyHandler keyHandler; ? ? ? ? Aria::setKeyHandler(&keyHandler); ? ? ? ? robot.attachKeyHandler(&keyHandler); ? ? ? ? ArSimpleConnector connector(&argc, argv); ? ? ? ? connector.parseArgs(); ? ? ? ? if (argc > 1) ? ? ? ? { ? ? ? ? ? ? connector.logOptions(); ? ? ? ? ? ? exit(1); ? ? ? ? }? ? ? ? ? ? ? ? ? ? // try to connect, if fail exit ? ? ? ? if (!connector.connectRobot(&robot)) ? ? ? ? { ? ? ? ? ? ? printf("Could not connect to robot... exiting\n"); ? ? ? ? ? ? Aria::shutdown(); ? ? ? ? ? ? return 1; ? ? ? ? } ? ? ? ? robot.comInt(ArCommands::ENABLE, 1); ??? ??? ??? ??? ??? robot.enableMotors();???????robot.runAsync(true); ??????? robot.setHeading(0); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.move(1000); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.setHeading(180); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.move(1000); ? ? ? ? ? ? ? ? Aria::exit(0); ? ? ? } Hemin Sh. Omer Nottingham, UK www.hemin.co.uk ? ________________________________ From: sherine To: Aria-users at lists.mobilerobots.com Sent: Saturday, November 29, 2008 1:43:39 PM Subject: [Aria-users] Motion control problem Hello! I am trying to write a simple program to move the robot a meter forwards, turn back 180 degrees, then move one meter through the following code..However the robot doesn t move, and I get the following error: ArRobotPacketReceiver::receivePacket: bad packet, bad checksum. I get this message after connecting with the robot. Is there something wrong in the code? I ve included the code as a whole, may be there is something i? miss in the ordering of methods' call! p.s. By the way, any help on the difference between the 3 'ArSimpleConnector' constructors?! Regards, Sherine //CODE int _tmain(int argc, char* argv[]) { ? Aria::init(); ? ArRobot robot; ? ? ? ? ArKeyHandler keyHandler; ? ? ? ? Aria::setKeyHandler(&keyHandler); ? ? ? ? robot.attachKeyHandler(&keyHandler); ? ? ? ? ArSimpleConnector connector(&argc, argv); ? ? ? ? connector.parseArgs(); ? ? ? ? if (argc > 1) ? ? ? ? { ? ? ? ? ? ? connector.logOptions(); ? ? ? ? ? ? exit(1); ? ? ? ? }? ? ? ? ? ? ? ? ? ? // try to connect, if fail exit ? ? ? ? if (!connector.connectRobot(&robot)) ? ? ? ? { ? ? ? ? ? ? printf("Could not connect to robot... exiting\n"); ? ? ? ? ? ? Aria::shutdown(); ? ? ? ? ? ? return 1; ? ? ? ? } ? ? ? ? robot.comInt(ArCommands::ENABLE, 1); ? ? ? ? robot.setHeading(0); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.move(1000); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.setHeading(180); ? ? ? ? ArUtil::sleep(5000); ? ? ? ? robot.move(1000); ? ? ? ? ? ? ? ? Aria::exit(0); ? ? ? } _______________________________________________ Aria-users mailing list Aria-users at lists.mobilerobots.com http://lists.mobilerobots.com/mailman/listinfo/aria-users To unsubscribe visit the above webpage or send an e-mail to: aria-users-leave at lists.mobilerobots.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mobilerobots.com/pipermail/aria-users/attachments/20081129/2e97a22c/attachment.html