Reach RS2 + M2 for an UAV : How to get height from NMEA messages the exact way there are in the EMLID Reachview App?

Hello EMLID community,

I am using a REACH RS2 a base and a REACH M2 as rover in the context of positioning an UAV.

I am sending for the M2 NMEA messages to my onboard computer connected to usb. I then choose in the ReachViewApp USB-to-PC connection. I am receiving well the NMEA messages and my X,Y position are good and precise (after some time to converge).But my Z position is not good, my plan is to built a small code to process the messages so I can extract the ''height" measurement that I can see on the ReachView app, and then just take the difference between the Base height and the rover height to have the relative height of the UAV. I put you a screenshot of the ReachView tab so you guys can see what I am talking about.

How can I achieve this ? Do I have to change of communication protocol or can I achieve this with NMEA protocol ?

Best regards,

Frank

Figure : see the height value of the rover and the base in the “Position” and “Base position” section

Hi Frank,

Could you elaborate a bit more on what’s wrong with your heights in NMEA messages? How is it different from the elevation in the ReachView Status tab? Could you post some examples?

Hello @svetlana.nikolenko,

I just read some doc about NMEA protocol and I found some part of the answer. Could you confirm me that in such a message *"Mär 31 17:41:33 e[0m[ INFO] [1617205293.793049171]: GNGGA,153755.40,5049.3885856,N,00423.8029694,E,4,18,0.8,88.502,M,45.395,M,1.4,68 "
the 88.502 is the altitude and the 45.395M is the undulation ?
Therefore, Do their sum correspond to the “height” I saw in the ReachView3 app/tab ? I made the calculations myself and it seems to be okay.

Currently, I have the X and Y position of my drone that I compute thanks to the Latitude-Longitude but the Z position is trickier : I would then like to know if ,from my Reach M2 rover, I can output the position of the base (Reach RS2). This would help me mostly for debugging purposes.

My plan is to have the position of my rover in a XYZ frame with the base as (0.0,0.0,0.0) origin.

Best regards,

Frank

Hi @kefran88,

You indeed can sum these two values to get the same elevation as you see in ReachView.

According to the NMEA standard, 88.502 is an orthometric height, and 45.395 is a geoid separation value. The sum of these two values is the ellipsoidal height. The same height is displayed in ReachView.

Hello @svetlana.nikolenko,

Indeed, but in my case I will just need the altitude.

But I made some tests, and when locating my drone 3m away (so I expect to be at (0,3) or (3,0) in a X,Y plan) from the base, the rover position output (after processing) gives me (-1.771,1.771). These numbers are very close to the square root of 3 so the baseline is still correct, but I wonder how the X,Y,Z axis are set up on the EMLID devices (and especially the Reach RS2) .

I didn’t find an answer in the documentation, could you enlighten me please ?

Best regards,
Frank

Hi @kefran88,

Sorry, I don’t quite understand your workflow. Did you post-process logs in RTKLib and receive such results? Are you building some drawing based on these results?

Could you clarify what you mean by axis here?

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.