I am trying to get data from an incremental rotary encoder by using Simulink and Workspace.

5 次查看(过去 30 天)
Hi there, I am using a incremental rotary encoder and trying to read position changes in time. I have tried several ways to do it Simulink by using memory and compare blocks but it did not work as I was expected. Then I tried the rotary encoder tutorial from MATLAB Support Package for Arduino Hardware and it worked flawlessly. After that, I decided to use the realtime Workspace data in Simulink by using simin block. Unfortunately, I couldn't find any ways to read realtime workspace data by using simin block. If there are any ways to read realtime data from workspace, or rotary encoder directly by using Simulink, that would really help me. I shared the tutorial code below.
clear all
a = arduino('COM5','Mega2560','Libraries','RotaryEncoder');
channelA = 'D2';
channelB = 'D3';
encoder = rotaryEncoder(a,channelA,channelB);
resetCount(encoder);
while(1)
count = readCount(encoder);
pos = mod(count,180);
fprintf('Current knob position: %d\n',pos);
pause(0.01);
posvar=pos;
end
  3 个评论

请先登录,再进行评论。

回答(1 个)

Kamlesh Vaghela
Kamlesh Vaghela 2018-8-3
how to install rotaryEncoder library in matlab?

类别

Help CenterFile Exchange 中查找有关 Arduino Hardware 的更多信息

产品


版本

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by