Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > ПЛК и микроконтроллеры
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Вопрос по ADAM 5017H

 Ответить Ответить
Автор
Сообщение
psv74 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 3
Свойства публикации Свойства публикации   Ответить, цитируя автора - psv74 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Вопрос по ADAM 5017H
    Опубликовано: 18 Октябрь 2007 16:13

Здравствуйте.

Есть такой вопрос:

1. Считываю значение кода с канала модуля ADAM5017H в диапазоне 0~10В (сигнал на входе 4В). 12-ти разрядный код АЦП в программе пишется в переменную типа int - 16 бит. Потом делая сдвиг вправо на 4 бита, получаю 12-ти разрядное значение кода равное 250 (значение переменной int=4000), а фактически диапазон изменения кода 0-4095 и при 4В 12-ти разрядное значение кода д.б. равено 0.4*4096=1638. Что не так? Почему принимаемый код не соответствует реальному значению кода?

2. Модуль ADAM5017H в составе ADAM 5510M (на программируемом com порте контроллера) видится и конфигурируется утилитой ADAM 5510 Series Utility. Почему - то не могу его обнаружить и сконфигурировать утилитой ADAM-4000-5000 Utility. Com порт тот же самый, все пар-ры по умолчанию: 9600 bpm, DataBits - 8, StopBits - 1, Parity - none. Почему?

Наверх
s_smirnov Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 14 Январь 2005
Категория: Russian Federation
Online Status: Offline
Публикации: 322
Свойства публикации Свойства публикации   Ответить, цитируя автора - s_smirnov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 19 Октябрь 2007 09:14
Первоначально опубликовано psv74

... Потом делая сдвиг вправо на 4 бита, получаю 12-ти разрядное значение...

А это зачем?

Мне почему-то кажется что никаких сдвигов не надо, разряды на своих местах.

Сергей
Наверх
psv74 Смотреть выпадающим
Новичок
Новичок


Присоединился: 18 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 3
Свойства публикации Свойства публикации   Ответить, цитируя автора - psv74 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 19 Октябрь 2007 09:42

Вы полагаете, что при преобразовании 12-ти разрядного кода в 16-ти разрядный число пишется начиная с младших разрядов, а старшие разряды заполняются нулями? Тогда принимаемый код должен соответствовать 0.4*4096=1638 (сигнал на входе = 4В, в диапазоне 0~10В), а принимаемый код = 4000

Наверх
Vald Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 02 Октябрь 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 427
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vald Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 19 Октябрь 2007 12:01
А на всякий случай посмотрите еще несколько значений: 0; 10; 0,2; 0,7; 0,8 и какие коды приходят , тогда удастся понять упаковку.
При экспериментах ни один чайник не пострадал

-----------
Плохому системному интегратору всегда OPC сервер мешает.
______________
Пишу на C++ за еду
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz