Страница 3 из 6 ПерваяПервая 12345 ... ПоследняяПоследняя
Показано с 21 по 30 из 67

Тема: Расчет подключаемого энкодера

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Почему же, говорит.
    Говорит что сначала будет выполняться вычитание, затем к его результату применят AND, а затем уже результат битового "И" добавят к аккумулятору "С".
    Или я что-то путаю?

  2. #2

    По умолчанию

    AlekseyK, попробуйте так:
    m : WORD; (* текущее значение fast encoder *)
    ottuda : WORD; (* прошлое показание encoder'а *)
    c: DINT; (* абсолютное положение encoder'а, без проблем с 65535 *)

    c := c + WORD_TO_INT(m - ottuda);
    ottuda := m;
    Последний раз редактировалось Владимир Ситников; 20.03.2016 в 13:25.

  3. #3

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    AlekseyK, попробуйте так:
    m : WORD; (* текущее значение fast encoder *)
    ottuda : WORD; (* прошлое показание encoder'а *)
    c: DINT; (* абсолютное положение encoder'а, без проблем с 65535 *)

    c := c + WORD_TO_INT(m - ottuda);
    ottuda := m;

    Почти хорошо. )) После перехода через максимальное значение регистра энкодера появляется один лишний такт в "С".

  4. #4

    По умолчанию

    Цитата Сообщение от AlekseyK Посмотреть сообщение
    Почти хорошо. )) После перехода через максимальное значение регистра энкодера появляется один лишний такт в "С".
    Это как? На каких входных данных не работает-то?

    Максимальное значение регистра -- 65535. Верно?
    Следующее значение -- 0. Верно?

    В моём эмуляторе такое работает как и ожидается:
    ottuda := 65535;
    m := 0;
    c := 0;
    c := c + WORD_TO_INT(m - ottuda); (* оказывается равным 1 *)

  5. #5

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Это как? На каких входных данных не работает-то?
    До 65535 всё работает, согласен. Но мне мало 32 оборотов моего энкодера, когда идет переполнение регистра "fast encoder". Поэтому в 7 посте я описал метод, как расширить счет на 32бита и уйти от этого ограничения.

  6. #6

    По умолчанию

    Цитата Сообщение от AlekseyK Посмотреть сообщение
    До 65535 всё работает, согласен. Но мне мало 32 оборотов моего энкодера, когда идет переполнение регистра "fast encoder". Поэтому в 7 посте я описал метод, как расширить счет на 32бита и уйти от этого ограничения.
    Ой, да приведите же значения на которых "ломается".

    Как себя ведёт это самое "переполнение fast encoder"?
    Какие значения принимает этот самый регистр?

  7. #7

    По умолчанию

    В этой теме: http://www.owen.ru/forum/showthread.php?t=16666&page=2 пост #19 почитайте.

  8. #8

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    В этой теме: http://www.owen.ru/forum/showthread.php?t=16666&page=2 пост #19 почитайте.
    Прочитал, и пример посмотрел. При активации строки "Назад" переменная C растет. Разве так должно быть?

  9. #9

    По умолчанию

    Цитата Сообщение от AlekseyK Посмотреть сообщение
    Прочитал, и пример посмотрел. При активации строки "Назад" переменная C растет. Разве так должно быть?
    Направление вращения автоматически не определяется, тут надо подумать как выбирать расчетную формулу.

    Главная ценность формулы в том, что она защищает от переполнения.
    Вложения Вложения
    • Тип файла: rar Enc.rar (12.8 Кб, Просмотров: 125)

  10. #10

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Направление вращения автоматически не определяется, тут надо подумать как выбирать расчетную формулу.

    Главная ценность формулы в том, что она защищает от переполнения.
    А вот формула от vladimirisitnikov учитывает и направление и защищена от переполнения. Ну и просто логичней.
    Последний раз редактировалось AlekseyK; 20.03.2016 в 14:20.

Страница 3 из 6 ПерваяПервая 12345 ... ПоследняяПоследняя

Похожие темы

  1. Расчет в отчете.
    от VVS_123 в разделе Master SCADA 3
    Ответов: 5
    Последнее сообщение: 12.10.2015, 16:24
  2. Расчет радиатора и нагревателя
    от rovki в разделе Трёп (Курилка)
    Ответов: 48
    Последнее сообщение: 11.11.2014, 10:10
  3. Расчет охладителя для ТТР Кипприбор
    от Iroha Uta в разделе Твердотельное реле
    Ответов: 12
    Последнее сообщение: 24.01.2014, 18:58
  4. ФБ расчет и long
    от LordN в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 07.03.2012, 07:07
  5. Master SCADA расчет
    от kanava в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 27.08.2008, 11:12

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •