Робот Манипулятор

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
KereY
beginner
beginner
Сообщения: 29
Зарегистрирован: 26 мар 2011, 10:04
Версия LabVIEW: 7.1,8.6
Контактная информация:

Робот Манипулятор

Сообщение KereY »

Добрый день подскажите с чего нужно начать, чтобы попробывать управлять с Labview роботом манипулятором купленным помоему у ЮжноУральского Гос. Университета. Он соединяется с компьютером через COM а в комп непосредственно через преобразователь USB. Набор команд неизвестен.Программа родная похожа на CANCNC

сам робот помоему один в один как этот http://www.lib.susu.ac.ru/ftd?base=SUSU ... etype=.pdf
Последний раз редактировалось IvanLis 20 дек 2012, 15:01, всего редактировалось 1 раз.
Причина: объединил сообщения
Аватара пользователя
Jakob Brontfeyn

Activity Gold Silver Black
expert
expert
Сообщения: 1729
Зарегистрирован: 28 фев 2008, 11:01
Награды: 6
Благодарил (а): 1 раз
Контактная информация:

Re: Робот Манипулятор

Сообщение Jakob Brontfeyn »

KereY писал(а):Добрый день подскажите с чего нужно начать, чтобы попробывать управлять с Labview роботом манипулятором купленным помоему у ЮжноУральского Гос. Университета. Он соединяется с компьютером через COM а в комп непосредственно через преобразователь USB. Набор команд неизвестен.Программа родная похожа на CANCNC
Начать нужно с "подслушивания" команд обмена через RS232
родного ПО робота, между PC и контроллером робота.
Подслушав, попытайтесь декодировать команды и затем перенесете
спокойно в Labview-приложение. Для подслушивания есть
чисто программные методики, можно и аппаратно присоеденится к
ком-порту. Проблема в том, что такиe шпионско-хаккерские методы
здесь не должны применяться, одно дело взломать протокол
какого-то там термометра или гигрометра, другое исполнительная команда,
где гарантия, что Вы сумеете на 100% это сделать правильно
и не получите от этого робота чем то тяжелым в глаз, при выполнении
какой-то команды.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: Робот Манипулятор

Сообщение Borjomy_1 »

Если почитаете описание, которое тут приводится, то можно найти следующие вещи:

Протокол обмена информацией между управляющей ПЭВМ
и манипулятором
Обмен информацией осуществляется через интерфейс RS232. Параметры об-
мена: длина слова – 9 бит (8 бит информации + бит признака первого слова); ско-
рость обмена – 19200 Бод. Инициатором обмена является управляющая ПЭВМ.
Передача от ПЭВМ к контроллеру осуществляется пакетами по 11 байт. Каждые
два байта пакета несут информацию для соответствующего ему шагового двига-
теля (16-ти разрядное знаковое целое число шагов, первый байт – младшая
часть):
– 1 и 2 байты – уставка для ШД основания;
– 3 и 4 байты – уставка для ШД плеча;
– 5 и 6 байты – уставка для ШД локтя;
– 7 и 8 байты – уставка для ШД наклона кисти;
– 9 и 10 байты – уставка для ШД вращения кисти;
– 11 байт – уставка для величины силы сжатия схвата (–128 ±127).
В каждом новом пакете 9-й бит первого байта установлен в единицу. Это га-
рантия того, что именно этот байт первый, то есть начало пакета. Во всех осталь-
ных байтах пакета 9-й бит установлен в ноль. Если приемник обнаружил единицу
в 9-м бите, то начинается запись пакета контроллером манипулятора, иначе, ин-
формация (передаваемые данные) будет игнорироваться. Каждый байт пакета на-
чинается старт-битом и заканчивается стоп-битом. На каждый принятый пакет от
ПЭВМ контроллер манипулятора передает ответный пакет из 10-ти байт – по два
байта на звено. Информация о состоянии схвата не передается.
Некоторые дополнительные данные:
– для двигателей основания, плеча, локтя – 16,6 шагов/градус,
– для двигателей кисти: наклон – 300 шагов/90 градусов, вращение – 750 ша-
гов/90 градусов.

Хотя и здесь можно найти "порнографию": "В каждом новом пакете 9-й бит первого байта установлен в единицу. Это гарантия того, что именно этот байт первый, то есть начало пакета." Очень интересно, каким образом явно этот бит задавать, особенно в системах со стандартизованным вводом-выводом.
Нельзя было добавить "скобки", как делается во всех нормальных протоколах обмена такого рода? И скорость нестандартная...
Последний раз редактировалось IvanLis 20 дек 2012, 15:05, всего редактировалось 1 раз.
Причина: объединил сообщения
Аватара пользователя
Jakob Brontfeyn

Activity Gold Silver Black
expert
expert
Сообщения: 1729
Зарегистрирован: 28 фев 2008, 11:01
Награды: 6
Благодарил (а): 1 раз
Контактная информация:

Re: Робот Манипулятор

Сообщение Jakob Brontfeyn »

Sorry, но слово байт означает 8 бит...???
о каком девятом бите речь, я че то не понял или там как то
организован бит-орирнтированный протокол по RS-232...???

Слово 9 бит? очень странно

все это даже не ASCII, все на битовом уровне
Когда то нечто подобное делал, но попроще
http://www.labviewportal.org/viewtopic. ... 785#p40135
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: Робот Манипулятор

Сообщение Borjomy_1 »

Это бит четности
Аватара пользователя
Jakob Brontfeyn

Activity Gold Silver Black
expert
expert
Сообщения: 1729
Зарегистрирован: 28 фев 2008, 11:01
Награды: 6
Благодарил (а): 1 раз
Контактная информация:

Re: Робот Манипулятор

Сообщение Jakob Brontfeyn »

Borjomy_1 писал(а):Это бит четности
я как то адресовался в Labview непосредственно к регистрам порта

http://www.labviewportal.org/viewtopic. ... 281#p42281

Наверное и к биту контроля четности можно как то подступиться
добраться, но это все конечно же, не стандартно.
KereY
beginner
beginner
Сообщения: 29
Зарегистрирован: 26 мар 2011, 10:04
Версия LabVIEW: 7.1,8.6
Контактная информация:

Re: Робот Манипулятор

Сообщение KereY »

мда без полпакета не разобраться)
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: Робот Манипулятор

Сообщение Borjomy_1 »

Если это действительно бит четности, то его контроль напрямую невозможен, это аппаратная реализация. Однако можно "подыграть"

Режимы контрольного бита (Parity Control Bit)
N(None) - проверка на паритет не используется и бит не выставляется;
E(EVEN) - проверка на четность, дополняет передаваемый символ так, чтобы количество единиц в передаваемом символе было четным;
O(Odd)- проверка на нечетность, дополняет передаваемый символ так, чтобы количество единиц в передаваемом символе было нечетным;
M(MARK) - бит паритета всегда равен единице;
S(SPACE)- бит паритета всегда равен нулю.

Таким образом можно сделать следующим образом:
Переконфигурировать порт перед (М) и после (S) передачи первого байта.
Вложения
Манипуляция паритетом.png
Ответить

Вернуться в «Коммуникация с приборами»