Double to Logical convertion in Simulink

59 vues (au cours des 30 derniers jours)
Alexander Babin
Alexander Babin le 25 Jan 2021
Commenté : Alexander Babin le 25 Jan 2021
Dear friends!
So i have an array of boolean like this:
[0 1 0 1 1 1 1 0 0 1 0]
If you plot it in Matlab, you get something like this:
And the values are exactly 0 and 1.
Now I put this array into a .mat file and send it to a Simulink model, where there is a function that actually takes boolean values, so i use conversion like this:
Now, if you plot the input array of 1 and 0 alongside the converted values, you will get this:
Notice, that most of the values are converted correctly, while at the end of the array, some values of the 'actual' array, are not quite zero, but 1.11e-15. Since they are not zero, I believe, they get converted into a '1' in boolean terms. The lower figure shows a zoomed in part of one of the points.
So, my question is why, oh, why is it like this?

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 25 Jan 2021
  1. Change the settings of the "From File" block. Do not do interpolation or extrapolation.
  2. The boolean data type could be saved with the .mat file, so you don't need the data type conversion block.
  1 commentaire
Alexander Babin
Alexander Babin le 25 Jan 2021
great, thanks!
about boolean type in .mat files - thanks again, knew that, was gonna do that :)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Simulink dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by