Почему объект Encoder readSpeed() выводит 0 или 6.2500 только со мной?

#matlab #encoding #controls #decoding #encoder

Вопрос:

Я работаю над созданием небольшой модели для управления двигателем постоянного тока с использованием ИК-кодера LM393. Я использую arduino в качестве сбора данных и инфракрасного излучения, чтобы получить обороты. когда я пытаюсь получить обороты в минуту с помощью rpm=readSpeed (), это дает мне ноль или 6.2500 только почему ? вот код

 clear; clc; a = arduino('com3','uno','Libraries','rotaryEncoder'); Encoder=rotaryEncoder(a,'D2','D3',120); PotPin = configurePin(a,'A0'); HBA1 = configurePin(a,'D10'); resetCount(Encoder); while true voltage= readVoltage(a,'A0'); writePWMVoltage(a,'D10',voltage); rpm=readSpeed(Encoder); pause(0.1); disp('rpm = '); disp(rpm);  end