Author Topic: What are possible ways I can track the orientation of an object?  (Read 6937 times)

0 Members and 1 Guest are viewing this topic.

Offline janoc

  • Super Contributor
  • ***
  • Posts: 3785
  • Country: de
Re: What are possible ways I can track the orientation of an object?
« Reply #50 on: December 16, 2017, 01:00:38 pm »

Going to ultrasound which has a speed of roughly 3E4 cm/sec changes this to somewhat smaller than 0.1 millisecond, much easier to do with simple equipment. 

Ultrasound is certainly doable, either by simple time of flight measurement and a triangulation (one needs at least 3 measurements to obtain a position fix) or going the whole hog and doing multilateration by measuring phase differences. Either is doable - I have implemented an ultrasonic 3D "mouse" back in 1998 using an AT89C2051 micro and a PC for doing the data processing. The mouse had an ultrasonic transmitter and there were 4 fixed receivers.

However even an ultrasonic system can get complicated fast - e.g. in my case I wasn't able to take the time measurements simultaneously because that micro has only 2 timers and one was generating the 40kHz ultrasonic ping already. That leads to large errors unless the object moves very slowly. Modern micro with 4 or more input capture channels wouldn't have that issue.

Then there is the problem with ultrasound transducers - most are very directional so if you want to cover a larger volume, you will need many of them (you need to have at least 3 signals at any given time in order to be able to track). Which will likely require an FPGA to do the time measurements. Or you will have to find some special transducers with wide angle sensitivity but those aren't common (nor cheap).

Another issue is with detecting when the "ping" has actually arrived. If you use only a simple threshold, like I did, you will get errors due to external noise and due to the characteristics of the transducers (they don't transmit/receive with equal power in all directions). This is solvable in the way sonar does it - by sending a modulated "chirp" instead and then using auto-correlation to find the center of the "chirp" in the incoming signal, regardless of any sensor-related attenuation or false signals. But that requires some decent processing power on the micro/FPGA because you are doing that for every channel.
« Last Edit: December 16, 2017, 01:03:09 pm by janoc »
 

Offline bson

  • Supporter
  • ****
  • Posts: 2269
  • Country: us
Re: What are possible ways I can track the orientation of an object?
« Reply #51 on: December 16, 2017, 02:21:54 pm »
Another idea (I don't know enough to tell how viable it is) - might be to run a current along a guide wire, then have four current sensors; two front, two rear.  The relative strength of the two front sensors will tell you where the guide wire is between them, ditto rear.  From this you can deduce orientation.  Steering to stay on course could be a pretty simple feedback loop, not requiring any processing at all.  You can also include automatic speed limiting as the guide gets too close to any one sensor (which should dampen or at least cap any feedback/system oscillation I think).  Of course a PID controller would be a step up.

Just a thought.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf