Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Аналоговый ввод. Цифровой вольтметр на базе NI PCI 6221

Аналоговый вывод. Генератор импульсов на базе NI PCI 6221.

Цифровой ввод-вывод.

Программирование контроллера NI PCI 6221

Работа с NI PCI 6221 похожа на работу со звуковой картой. Для успешной работы должна быть установлена программа от National Instruments “Measurement and Automation Explorer” версии, поддерживающей данный контроллер. Процедуры для плат М серии NI собраны в динамической библиотеке mwnidaqmx.dll, которая есть в версии MatLab 7.0.3 и старше. Не забудьте, что в языке MatLab различаются прописные и строчные буквы т.е. АО и ао – это два разных объекта! Запустите Measurement and Automation Explorer и убедитесь, что данная плата NI PCI 6221 присутствует в системе. Проверьте наличие установленных адаптеров (nidaq, parallel, winsound) командами: out = daqhwinfo; out.InstalledAdaptors

1. Создайте объект на основе NI PCI 6221 с именем, с которым данный адаптер существует в системе. Для цифрового ввод-вывода: dio = digitalio('nidaq', 'dev 1');

2. Добавим линии для вывода: lines=addline(dio, 0:2,0, 'Out',{'Line0';'Line1';'Line2'});

Здесь 0:2 – три линии для 0 порта, работающие на выход 'Out' с именами 'Line0' и.т.д.

3. Для ввода назначим 3 линии для порта 1: lines=addline(dio, 0:2,1, 'In', 'LineIn0'; 'LineIn1'; 'LineIn2'});

4. Подготовим вектор-строку данных data=[0,0,0]

5. Запустим объект на выполнение start(dio);

6. Передадим их в контроллер putvalue (dio,data);

7. Получим данные из этой линии v=getvalue(dio);

8. Остановить работу объекта stop(dio);

9. Уничтожить объект: delete(dio); clear dio

1. Создайте объект на основе NI PCI 6221 с именем, с которым данный адаптер существует в системе. Для аналогового выхода ao = analogoutput('nidaq','Dev1');

2. Создайте канал, например, с номером 0: ch0 = addchannel(ao, 0, 'Chan0');

3. Создайте вектор-столбец data=[x1;x2;x3;x4;x5];

4. Передайте данные в аналоговый выход putdata(ao,data);

5. Запустите объект на выполнение start(ao);

6. Сделаем паузу на прием данных pause(1) и остановим объект stop(ao);

7. Можно повторить пункты 3-6

8. Цикл в языке MatLab записывается как

for i=1:10

stop(ao); putdata(ao,data1); start(ao);

end

9. Уничтожить объект: delete(ao); clear ao

10. Аналогично пункта 3 подготовьте вектор-столбец с данными для генерации синусоидальных колебаний, пилообразных, треугольных, трапециидальных.

1. Создайте объект на основе NI PCI 6221 с именем, с которым данный адаптер существует в системе для аналогового входа ai = analoginput('nidaq','Dev1');

2. Добавьте массив каналов addchannel(ai, [1 2]);

3. Задайте необходимые свойства созданного объекта

ai.SamplesPerTrigger = 1000; ai.TriggerType = 'hwDigital';

4. Запустите объект на выполнение start(ai);

5. Считайте или передайте данные data = getdata(ai);

6. Для вольтметра - усредните полученные данные и выведите их пользователю.

7. Полученные данные можно вывести в виде графика plot(data); как в осциллографе.

8. Остановить работу объекта stop(ai)

9. После работы объект необходимо удалить delete(ai); clear ai

10. Необходимо иметь ввиду, что выбор предела измерения программно не управляется, поэтому не забудьте на данную линию подать соответствующий потенциал (например 0).

<== предыдущая лекция | следующая лекция ==>
Аналоговый вывод | Лабораторный отчет
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 578; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.