Python в LinuxCnC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

попробовал перечислить явно:

Код: Выделить всё

project_pou_instances_xpath = {
    body_type: PLCOpen_XPath(
        "/ppx:project/ppx:types/ppx:pous/ppx:pou[@name='paste_pou']/ppx:body/ppx:%s/*" % body_type),
    body_type: "FBD",body_type: "LD",body_type: "SFC"}
работает...
===========
но таких мест в проге может сотни - руки отпадут менять ;)
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Python в LinuxCnC

Сообщение Serg »

sed пусть поменяет... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Python в LinuxCnC

Сообщение Nick »

Вот так работает:

Код: Выделить всё

dict((i,2) for i in [1,2,3])
{1: 2, 2: 2, 3: 2}
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Python в LinuxCnC

Сообщение Nick »

ЗЫ может проще питон другой запустить?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

некоторые файлы в емс написаны вот таким образом(я про отступы)
Выделение_029.jpg (4758 просмотров) <a class='original' href='./download/file.php?id=131413&sid=f47b8ff819f979e2b9514dec6d4596ce&mode=view' target=_blank>Загрузить оригинал (161.86 КБ)</a>
хотя сами же установили следовать PEP8 если поставить в редакторе табуляцию в 4 отступа - получается как на картинке...
если в 8 , тоже не совсем всё выравнивается(так как применены и табуляции и отступы)
чем руководствовались при выборе такого "стиля" - непонятно :)
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

Попробуй С :hehehe: Компилятор в системе есть, работает быстрее, можно юзать абсолютно любые виды кодинга, хоть всё в кучу сваливай.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

MX_Master писал(а):Попробуй С
в каком смысле "попробуй" ;)
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

Я к тому, что чёрный пояс по питону у тебя уже есть (: пора набивать чёрный пояс на другом языке.

Кстати, как в программке на С общаться с сервером LinuxCNC по аналогии с мудулем linuxcnc на питоне? Есть, к примеру, у меня скриптик, который работает посредником между LinuxCNC и другой программой. Общение проходит через STDIN/STDOUT. Хочу заменить этот скрипт на С программку с целью увеличения скорости и уменьшения нагрузки на проц.

https://github.com/MX-Master/LinuxCNCWe ... ws/lcnc.py
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

я скорей перворязрядник...
там ,где в емс питон - пользуюсь питоном,где нужен си (модулях,кинематиках) - разумеется синтаксис си ...
а чтоб так вот - "забей на питон - пользуйся си" ,так это пол емс нужно переписать...
============
ты про это :
https://github.com/LinuxCNC/linuxcnc/bl ... ion.h#L102
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

Ну вощем я понял, легче всего накатать свой HAL компонент.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Python в LinuxCnC

Сообщение Serg »

nkp писал(а):чем руководствовались при выборе такого "стиля" - непонятно :)
Просто пытаются не напорться на главное дерьмоудобство Питона - зависимость логики программы от количества пробелов.
Есть редакторы, которые умеют заменять 8 пробелов на одну табуляцию, есть редакторы, в которых настривается отображаемаяширина табуляции и т.п. В итоге, когда текст написанный в одном редакторе загружается и правится в другом, то возможны разнообразные чудеса с отступами, и как следствие в поведении программы. Единственный наиболее надёжный (но не на 100%) способ - строго придерживаться 8-ми символьных отступов.
MX_Master писал(а):Я к тому, что чёрный пояс по питону у тебя уже есть (: пора набивать чёрный пояс на другом языке.
Нормальному программисту вообще не важно на каком языке писать. :) Любой язык более-менее осваивается за пару вечеров и шлифуется во время написания первой программы строк на 200-300.
MX_Master писал(а):Кстати, как в программке на С общаться с сервером LinuxCNC по аналогии с мудулем linuxcnc на питоне?
Linuxcnc API для питона написан на C... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

UAVpilot писал(а):зависимость логики программы от количества пробелов.
нет ,это было бы слишком просто))
там (на картинке) применены И отступы , И табуляции...
и если следовать хоть какому нибудь правилу (и 8 пробелов,и 4 ) ,то отображение неправильное...
Единственный наиболее надёжный (но не на 100%) способ - строго придерживаться 8-ми символьных отступов.
есть pep и выдумывать нечего...
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

UAVpilot писал(а):Linuxcnc API для питона написан на C...
Пойду посморю..
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

Создатель и «великодушный диктатор» Python уходит в отставку
http://www.cnews.ru/news/top/2018-07-13 ... v_otstavku
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

nkp писал(а):Создатель и «великодушный диктатор» Python уходит в отставку
http://www.cnews.ru/news/top/2018-07-13 ... v_otstavku
Какая жаль :hehehe:
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Python в LinuxCnC

Сообщение nkp »

MX_Master писал(а):
nkp писал(а):Создатель и «великодушный диктатор» Python уходит в отставку
http://www.cnews.ru/news/top/2018-07-13 ... v_otstavku
Какая жаль :hehehe:
ты прикалываешся,потому как у тебя ЕЩЕ нет детища всей твоей жизни...
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3099
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Python в LinuxCnC

Сообщение MX_Master »

работать 40 лет на одном заводе на одной и той же должности? увольте (:
Ramir7887
Новичок
Сообщения: 1
Зарегистрирован: 04 июн 2019, 15:28
Репутация: 0
Настоящее имя: Рамир
Контактная информация:

Re: Python в LinuxCnC

Сообщение Ramir7887 »

Добрый день!
Вопрос можно ли использовать модуль linuxcnc в связке с Python3 а не с python2? если да, то как это организовать? у меня третий питон не видит этого модуля, а со вторым все нормально. Заранее спасибо за помощь!)
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Python в LinuxCnC

Сообщение Serg »

Можно, достаточно портировать этот модуль под Python3. Там не сложно, непонятно почему это ещё никто не сделал (хотя может и сделал, просто я пока не слежу за этим). Через какое-то время мне понадобится - думаю сделать, если никто раньше не сделает. :)

P.S. На заказ делать не буду. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
evgenymcp
Мастер
Сообщения: 1418
Зарегистрирован: 23 апр 2017, 05:37
Репутация: 326
Настоящее имя: Евгений
Откуда: Абакан,Хакасия
Контактная информация:

Re: Python в LinuxCnC

Сообщение evgenymcp »

Мы не знаем, что это такое. Если бы мы знали, что это такое - мы не знаем, что это такое... :-D
Ответить

Вернуться в «LinuxCNC»