Error with Calling "dcmecef2ned" in Simulink

9 ビュー (過去 30 日間)
Richard
Richard 2025 年 11 月 18 日 16:33
コメント済み: Paul 2025 年 11 月 19 日 22:59
I am trying to run a Simulink model I initially created with Matlab 2022b on 2024b. I get the following error when I try to run the code.
"Function 'dcmecef2ned' not supported for code generation."
It use to work, but now it does not on 2024b. Is there a fix for this?

回答 (1 件)

Paul
Paul 2025 年 11 月 19 日 17:54
Hi Richard,
In which version did it used to work? I'm assuming you're calling dcmecef2ned from inside a MatlabFunction block?
Maybe the block Direction Cosine Matrix ECEF to NED would be helpful?
  2 件のコメント
Richard
Richard 2025 年 11 月 19 日 19:24
編集済み: Richard 2025 年 11 月 19 日 19:27
Paul, I am using Matlab 2024b. The dcmecef2ned function is in the Aerospace Toolbox. The function is embedded in a user-defined Matlab function block that I am calling within my Simulink model, thus I can't use the block Direction Cosine Matrix ECEF to NED.
I ended up coping the function, renaming it to "my_dcmecef2ned.m" and deleting the error checking at the beginning of the script. I modified the following function call in the script as follows:
Was:
angles = convang( [lat(:) lon(:)] ,'deg','rad');
Is:
angles = deg2rad([lat lon]);
This worked. I am not sure why I can't use the default function in Matlab.
Paul
Paul 2025 年 11 月 19 日 22:59
The cited doc page does not include an "Extended Capabilities" section indicating that the function is eligible for Code Generation. So I'm not surprised that it doesn't work inside the MatlabFunction block. I'm more surprised that it did work in a previous version, hence my question regarding which version that was.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAerospace Applications についてさらに検索

製品


リリース

R2024b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by