[PSUBS-MAILIST] compass

Jon Wallace via Personal_Submersibles personal_submersibles at psubs.org
Mon Apr 22 12:31:33 EDT 2019


Hi Cliff,
I agree with you regarding technology advancement.  I was initially wary of this unit because it was so inexpensive but it seems to be as good as my $150 Honeywell HMC6343, and certainly good enough for the basic navigation we may require for our subs.
I am letting Hank figure out his own housing based upon the dynamics of his submarine, but for my own housing I chose 1 inch PVC pipe with a cap on each end.  The sensor just fits on top of the pipe end without impeding the PVC cap from attaching to the pipe normally.  I think the 1 inch PVC is strong enough at 1ATM for my own purposes, but the housing could be oil compensated or potted for deeper diving.
Regarding calibration and declination deviation, I have convinced myself these issues are largely irrelevant for my own purposes and probably most of our community.  I expect most usage to be of the kind whereby a visual reference is made on the surface to one or more particular headings or bearings.  For example, point submarine at "the beach" and compass reads 350, so to get back to "the beach" I have to head 350.  In that context the accuracy of the compass to true north really doesn't matter.  Alternatively, I added a push button to Hanks unit that allows override of the sensed heading and converts it to "north" or 000.  For example, let's say on the surface you turn the sub to true north and the compass reads 025 due to metal and declination deviation.  Press this button and the compass now reads 000 and the software takes care of calculating further readings from the sensor.  Instant calibration assuming you already know where true north is located.
The CMPS12 does not output ASCII strings, it instead outputs two bytes that have to be combined into a 16 bit number.  Heading is a four digit number from 0000 to 3599 with the "ones" place representing tenths of a degree and displayed as 000.0 to 359.9 degrees.  Pitch, roll, and temperature are similar but Hank was only interested in the compass functionality so I did not implement the other options.  I have read some reviews that the temperature sensor is not extremely accurate.  I prefer to use an LM34 variant for temperature readings anyway.
The mode pin on CMPS12 lets you choose between I2C and serial.  I implemented serial because of the length of cable necessary to get out of, and then away from, the submarine in order to minimize iron effects on the sensor.  I've done a lot of research on maximum I2C cable length and there isn't any good rule of thumb other than figuring out total capacitive value of cable and pull-ups, and then potentially changing bus speed.  Too much effort to consider when serial is an option.  I2C was primarily designed for PCB mounted devices and is popular in the ROBOT field because everything is in close proximity.  For sensors in close proximity of the microprocessor it would be fine.  My HMC6343 is I2C only and I prototyped it with 7 feet of CAT-5 cable which seemed to work fine, but it was also the only device on the I2C bus.  In any event, I prefer serial communication whether ASCII or byte format because it is so dependable.
Jon

      From: Cliff Redus via Personal_Submersibles <personal_submersibles at psubs.org>
 To: Jon Wallace via Personal_Submersibles <personal_submersibles at psubs.org> 
 Sent: Monday, April 22, 2019 10:34 AM
 Subject: Re: [PSUBS-MAILIST] compass
   
 Jon,  the CMPS12 sensor you are working with is quite similar to the Ocean-Server OS5000 I use on the R300.  I use RS-232 serial communication with the compass rather than the TTL serial which is one of the option on the CMPS12.  I note the higher voltages of RS232 serial communication protocol  would actually fry the electronics on the CMPS12.
Compass Module with Tilt Compensation - OS5000-S


| 
| 
| 
|  |  |

 |

 |
| 
|  | 
Compass Module with Tilt Compensation - OS5000-S
**Replacement:** None. There is no direct replacement for this part but check out our [magneto sensors](http://w... |

 |

 |



https://ocean-server.com/wp-content/uploads/2018/08/OS5000_Compass_Manual.pdf

   A couple of observations on magnetic compass usage that I found from my experience on the R300:1) I machined a small enclosure out of aluminum so that the sensor can be located outside of the steel pressure hull.  The sensor would not work without this.2) I found that it was necessary to do a hard iron calibration to get good results.  To do this I built a compass calibration skid.  See picture of skid I made out of an old truck axle.  To calibrate the compass I alighted the skid to magnetic north then sat the R300 on the frame.  I then rotated the R300 through 360 degrees logging the boat heading from the compass skid and the magnetic compass heading from the OS5000.  The calibration process for the sensor  was to position the compass at the cardinal points then tell the unit when I was at these points.  Without this calibration the compass was up to 25 degrees off at some headings.  Also the error would vary with heading.3) As you are setting up the display for Hank, have you considered delineation angle, the angle difference between true north and magnetic north?  As an example, where I live in Devine Texas, the declination angle is 4.32 E while at Flathead lake, it is 13.25 E.  On the R300, I have a HMI screen for compass calibration. On the screen I give the operator the ability to change the declination angle.  I also allow the operator to display either magnetic heading or the true heading corrected by this delineation angle.4) On the OS5000 compass, tilt and roll sensor I use, it's serial communication conforms to NMEA 0183 which defines the ASCII strings being sent for compass heading, roll angle, pitch angle, temperature ...   On the CMPS12 I don't see this.  Does the CMPS12 send ASCII strings?  

I note on the CMPS12 sensor data sheet as you mention that you can use either 12C or TTL serial.  Which did you implement for Hank's compass?  I see that almost all the RC usage of these sensors use 12C.
It is amazing to me the cost reduction that has occurred on these small IC magnetic compass sensors.  When I first built the R300, 7 years ago, I paid over $500 for this sensor which is no longer being sold.  This was cheap at the time with similar units going for $2K.  You can now by essentially the same IC with the CMPS12  for $30. So now the real cost for having one of these magnetic compasses is the machine work to make the enclosure.
 Now if they could just get the hearing aid manufactures to get on this price-quality slope, it would be great!  It is sad when you get old and start having all these equipment failures!
Best  Cliff
 On Monday, April 22, 2019, 7:20:11 AM CDT, Jon Wallace via Personal_Submersibles <personal_submersibles at psubs.org> wrote:  
 
 Alan,
It's been a while, but I can report back now.  I just finished building a display for Hank using the CMPS12 sensor and it seems to be a good low cost alternative to the HMC6343.  I like the fact that it has an option for TTL serial communication and the tilt-compensation seems to be quite stable.  I wouldn't hesitate to purchase it and I'm going to get one for myself even though I already have the HMC6343.
Jon



      From: Alan via Personal_Submersibles <personal_submersibles at psubs.org>
 To: Personal Submersibles General Discussion <personal_submersibles at psubs.org> 
 Sent: Tuesday, October 30, 2018 10:46 PM
 Subject: Re: [PSUBS-MAILIST] compass
  
Jon,I have to buy a compass some time so looked it up but it's pretty expensiveat $188-. I also saw a video on it dated 2010, so it's at least 8 years old.There are modules for less than $20- but not tilt compensated.It does say it is "high end" but is there much difference between a cheap& expensive compass? ( I know nothing about this).The thought came to mind that you could possibly cover it with resin &mount it outside the hull away from magnetic interference.Alan 


   _______________________________________________
Personal_Submersibles mailing list
Personal_Submersibles at psubs.org
http://www.psubs.org/mailman/listinfo.cgi/personal_submersibles
  _______________________________________________
Personal_Submersibles mailing list
Personal_Submersibles at psubs.org
http://www.psubs.org/mailman/listinfo.cgi/personal_submersibles


   
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.whoweb.com/pipermail/personal_submersibles/attachments/20190422/81ee483e/attachment-0001.html>


More information about the Personal_Submersibles mailing list