|
|
  |
Система команд сервоконтроллера, обсудим? |
|
|
|
Feb 17 2009, 13:24
|
Профессионал
    
Группа: Свой
Сообщений: 1 613
Регистрация: 2-09-08
Из: г.Набережные Челны
Пользователь №: 39 936

|
Цитата(khach @ Feb 17 2009, 14:47)  Это как, доп раземы на драйверы сервомоашинок от енокдеров другой оси? А кто тогда математикой заведует? Я уже не говорю, что заказчики "обнаглели" и присылают G-код с хеликоидальной интерполяцией или пытаются использовать зуборезные пальчиковые фрезы- это когда отверстие и фрезеруется и резьба режется одной и той же фрезой и нужно согласованное с вращением шпинделя движение детали по двум осям :-) Это надо, что-бы у каждего привода выхода датчиков положения соединялись как с ЧПУ так и между собой, и ЧПУ распределяет кто ведущий кто ведомый. Например при нарезки резьбы, ведущий привод шпинделя, поэтому привод допустим Z считывает импульсы датчика "S " и синхронизуется с масштабом которая ЧПУ прописала (что будет соответсвовать какому-то шагу), также и допустим линейная интерполяция ведущий допустим "Z" , а ведомый "X" (здесь ведущий будет тот, у кого по расчетам будет наибольшая скорость).
|
|
|
|
|
Feb 17 2009, 15:12
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Что-то это меня настораживает: Цитата The Home of Mach3 and LazyCam
Artsoft has been in the CNC business since 2001. In this time, the Mach series of CNC software has evolved into the best available PC-based CNC software on the market. Not only is it extremely affordable to the hobbyist and industry alike, it is pioneering in it's features and continuing development. There are over 10000 users of Mach who swear by its ease of use, great features, and outstanding support.
Software Requirements
Keeping with our home hobbyist roots, the minimum software requirements to run Mach are very reasonable. Below are the specifications for running Mach3 stably. Mach3 Minimum Requirements:
* Windows 2000/XP Operating System * 1Ghz CPU * 512MB RAM * Non-integrated Video Card with 32MB RAM * Basic Computer Skills (ability to copy/rename files, browse directories, etc) * Desktop PC if using the Mach3 Driver (Laptops are not supported because the power saving features of the chipsets disrupt the pulse stream) Взято отсюда.Получается, что Mach3 софтварно реализует ЧПУ на базе компьютера? С учетом требований к реалтайтму, возникает вопрос, а на сколько все это надежно? Да и системные требования впечателяют, хотя и не сверхбольшие. Или это нормально и я отстал (не догнал) от жизни? Просто в моем представлении ЧПУ это специализированная платформа (ну пусть IBM PC) с соответствующей ОС. А компьютер, пусть даже и под виндой, выполняет только функцию терминала - удобного рабочего места для оператора, наладчика. Но не как не выполняет функции непосредственного управления оборудованием.
--------------------
Выбор.
|
|
|
|
|
Feb 17 2009, 15:18
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(Rst7 @ Feb 17 2009, 17:18)  Как по мне, то пинать совершенно не за что. Есть за что: явный перекос потока данных. От сервака с АВР в реалтайме да еще и режиме мониторинга требовать обрабатывать поставляемые данные - это что-то особеннаго  Надо додумать. Оправдывает только то, что написано буквально "на кончиках пальцев" - что вижу, то и пою. Цитата ситуация неприхода привода в точку финиша? Или большое отклонение от заданной траектории? Это по-большей части головная боль контроллера верхнего уровня, надо только гарантировать доставку лога от сервака. Цитата Кроме того, в каждом пакете данных необходимо иметь таймстамп в приемлемых единицах. +1 И еще синхронизацию как-то сделать бы. Синхропакетом, что ли? Пока непонятно. Цитата Пошел покурить про Mach3... Очень порадовало описанице на форуме   У меня старый ноутбук, на который еле-еле влезла ХР, печатная машинка, короче. Думал: ага, пристрою вещицу. Пень 300 МГЦ/192 ОЗУ... Блин, как поставил Mach3 - компьютер чуть ли не вздулся от "реалтайма"  Цитата(Огурцов @ Feb 17 2009, 18:47)  А это откуда ? Еще есть ? Из головы, дурное дело - нехитрое
|
|
|
|
|
Feb 17 2009, 15:29
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(_Pasha @ Feb 17 2009, 16:18)  +1 И еще синхронизацию как-то сделать бы. Синхропакетом, что ли? Пока непонятно. Slp_system_synchronize Цитата(_Pasha @ Feb 17 2009, 16:18)  Пень 300 МГЦ/192 ОЗУ... Блин, как поставил Mach3 - компьютер чуть ли не вздулся от "реалтайма" Лол...у меня пентиум 2GHz временами зависает. Не, если кроме Mach больше ничего не пущать, то оно работает. Так что выше не просто так про отдельную и оптимизированную ось написано. Цитата(_Pasha @ Feb 17 2009, 16:18)  Из головы, дурное дело - нехитрое  Неплохо. Подумывал написать нечто такое, та все некогда.
|
|
|
|
|
Feb 17 2009, 15:45
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата И еще синхронизацию как-то сделать бы. Синхропакетом, что ли? Пока непонятно. Это не трудно. Можно реализовать что-то аля NTP. К сожалению, винда - это тоже не атомные часы. Миллисекундные тики - они хорошо если с дискретностью 10-20мс идут. При частом вызове вот такого (а часов с меньшей дискретой в винде я не знаю) Цитата struct timeb ct; double d; ftime(&ct); d=ct.time*1000.0+ct.millitm; d будет иметь дискрету, названную выше.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Feb 17 2009, 16:17
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Получил платы, Ё-МОЁ. Таки умудрился накосячить. Если бы у меня был начальнег, уволил бы меня нахрен. В общем, все блины - первые  Хорошо, что не смертельно, можно и так запустить. По теме. Есть еще вариант задания траекторий/профилей тупо в виде арифметического выражения. Влезет в m168 ? В общем, на ум приходят все более текстовые версии протокола. Бинарные - мимо кассы, раз тут математика пойдет. А это, в свою очередь, облегчает навороты с синхронизмом, адресацией, маршрутизацией и т.п.
|
|
|
|
|
Feb 17 2009, 16:24
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата Есть еще вариант задания траекторий/профилей тупо в виде арифметического выражения. Давайте все-же определимся, кто будет этому контроллеру команды давать? Нужен ли тому, кто будет давать эти команды такой способ их задания? Цитата Влезет в m168 ? Калькулятор на +-*/() - это очень маленькая софтинка
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Feb 17 2009, 17:30
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(_Pasha @ Feb 17 2009, 16:33)  Не, я начал вкуривать, но пока чего-то все кажется, что это избыточно. Надо еще время для осознания. Не, это еще малая толика. Но не избыточно и не сложно. Описание, конечно, нужно, с картинками, чтобы хоть чуть-чуть понятно было. Цитата(_Pasha @ Feb 17 2009, 17:34)  Не, с синусами, логарифмами, экспонентами и степенями... А может и не надо Какие синусы, таблично бы успеть... Цитата(dpss @ Feb 17 2009, 17:30)  Десятки приводов ,тысячи портов с управлением под "Окнами" c жестким реальным временем до 30 микросекунд на цикл Mach3 и побыстрее может. Ядро способно работать на 100kHz, при том, что реально прерывания вызваются еще в два раза чаще. Однако все упирается в цену ошибки. Пока он грызет фанеру вопрос с зависаниями не актуален, если запущена обработка чегой-нибудь более ценного, чем фанера с пенопластом, то тут уж задумаешься.
|
|
|
|
|
Feb 18 2009, 06:27
|
Знающий
   
Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489

|
Вам бы сначала определится что за сервоконтроллер изобретаете. Какие функции у этого сервоконтроллера? Это что, гибрид сервоусилителя и motion controller? Куда подключены датчики обратной связи? Кто синхронизирует оси? Кто интерпретирует G-код? Какая программа будет им управлять? Не напишите же вы софт для ЧПУ и роботов. От этого и надо плясать. А большинство любительских программ используют step-dir и не нужна там никакая система команд и протокол. Цитата(dpss @ Feb 17 2009, 19:30)  Как говорится "все уже придумано до нас" Десятки приводов ,тысячи портов с управлением под "Окнами" c жестким реальным временем до 30 микросекунд на цикл http://www.beckhoff.ru/english/pdf/EtherCA...AT_Overview.pdfЕсть ли в свободном доступе документация по логической части EtherCAT? Дастаточная чтобы его можно было использовать в своих контроллерах.
--------------------
В действительности всё не так, как на самом деле.
|
|
|
|
|
Feb 18 2009, 07:38
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(slog @ Feb 18 2009, 09:27)  Вам бы сначала определится что за сервоконтроллер изобретаете. Объясняю более внятно. 1. Цель: получить "гибрид сервоусилителя и motion controller" 2. Заложены 6 свободно программируемых дискретных входов по IEC61131-2 http://www.prolog-plc.ru/beck/docum/AN_SC1X3_IO.pdf которые закороткой одного стабилитрона можно превратить обратно TTL Из этих входов 2/3 идут на квадратурный энкодер, Step, Dir, Limit_Switch 3. Аналоговый вход 4..20 мА 4. RS-485 с растяжками и джампером на RC-termination Протокол уже строю по принципу Hayes-модема: с одной стороны богатая текстовая командная строка, затем переход к варианту MODBUS-RTU или скорострельный поток данных непосредственно для командных регистров положения/скорости/момента. Теперь про бинарный поток данных Избежать "экзотики", видимо, не получится. Замечу еще полезное свойство: командные регистры не могут измениться мгновенно, поэтому для низкоуровневого потока данных достаточно передавать приращения с гарантией их доставки, например инвалидацией после приема блока данных (адресат отправляет обратно CRC блока), отправитель решает, повторять ли передачу. В пакет входит Timestamp с "зерном" в 100 мкс разрядности 16 бит, потому что реально никто больше 1 секунды молчать не будет.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|