ARIA-Users

Date Index Thread Index

Re: [Aria-users] about aria



DLH DLH wrote:
> Dear sire:
> I want to know in which case we must use the ArRobot.lock and 
> ArRobot.unlock,


You must lock and unlock the ArRobot object if it's being accessed from more
than one parallel thread.   ArRobot's processing cycle will run in a new thread
if you use ArRobot::runAsync();  if you access ArRobot after callling
runAsync(), it must be locked while you access it.  It will run in the same
thread as main() if you use ArRobot::run(); if you have also created any new
threads that access ArRobot, those threads must lock ArRobot.

ArRobot does not need to be locked if you access it from a user-task callback, a
setsor-interpretation callback, or an ArAction object since these are called
within ArRobot's processing cycle, and it locks itself during that cycle.


> and ArAnalogGyro Class  has the function setFilterModel
> (  double   gyroSigma,   double   inertialVar,   double   rotVar,  
>  double   transVar ) can I know the Kalman kalman filter include these 
> parameters,so I can set them better.

The filtering is done in src/ArAnalogGyro.cpp, in the encoderCorrect() function.
I think it's fairly straightforward filter algorithm, with a few special cases
handled as well, but am not that familiar with that code.


Reed