Страница 3 из 5
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 13:11
2cme
Может идет переполнение буфера?
Точно сделал меньше команд и работает... Как сделать чтобы работал с большим файлом?
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 13:32
2cme
Порт открыт процессом "pythonw.exe" (PID: 4048)
Запрос:23.07.2012 13:28:17.83464
76 0D v.
Ответ:23.07.2012 13:28:17.83464 (+0.0000 seconds)
45 42 42 76 31 33 5F 61 6E 64 5F 61 62 6F 76 65 EBBv13_and_above
20 45 42 20 46 69 72 6D 77 61 72 65 20 56 65 72 EB Firmware Ver
73 69 6F 6E 20 32 2E 31 2E 35 0D 0A sion 2.1.5..
Запрос:23.07.2012 13:28:17.83464 (+0.0000 seconds)
54 50 0D 54 50 0D 54 50 0D 54 50 0D 54 50 0D TP.TP.TP.TP.TP.
Порт закрыт
Тоесть получается нужно сделать чтобы команды отправлялись поочереди.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 13:40
Nick
ок, щас сделаем

.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 13:47
Nick
новый код для def doFile:
Код: Выделить всё
def doFile( self, fname ):
f = open(fname,"r")
a = f.readlines()
f.close()
for s in a :
try:
self.serialPort.write( s )
response = ""
t = time.time()
while response == "" :
response = self.serialPort.readline()
if time.time()-t > 10 :
inkex.errormsg( "Got 10 sec timeout on command '%s'"%s )
return
if ( response != 'OK\r\n' ):
inkex.errormsg( 'After command ' + s + ',' )
inkex.errormsg( 'Received bad response from EBB: ' + str( response ) + '.' )
return
except:
pass
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 13:57
2cme
Попрежнему передаются все команды сразу.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 14:27
Nick
Хмм не может быть... мы каждый раз ждем ответа OK, причем если он будет не ОК процедура тупо завершается...
попробуй перед
if ( response != 'OK\r\n' ):
добавить
inkex.errormsg( "resp = '%s'"%response )
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 14:34
2cme
Nick, я закоментировал оба return и заработало (;
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 14:49
Nick
это по идее \r\n (carige return, new line ), если не будет \n то весь файл одной строкой прочитается. Но \n должен быть, куда он делся???
хммм.... наверное надо в
скрипт gcode to eggbot \n вот в эту строку добавить:
res.append("SM,%s,%s,%s\r\n"%(int(time), int(dx*scale_x), int(dy*scale_y)))
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 15:11
2cme
Nick писал(а):res.append("SM,%s,%s,%s\r\n"%(int(time), int(dx*scale_x), int(dy*scale_y)))
ок, сделал. Работает

.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 16:57
2cme
Так задумано:
А так нарисовал:
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 17:01
Nick
Т.е. просто на 90 градусов повернул?
Скинь оригинал svg
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 17:05
2cme
То что зеркально нарисовал, это наверное достаточно инвертировать вращение одного из двигателей.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 23:01
Nick
Не, если зеркально, то надо двигатели местами поменять... наверное

Кстати, зеркально это если с какой стороны смотреть?

Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 23:03
Nick
Нарисовал бы что-нибудь по сложнее сразу, например надпись какую-нибудь из пары-тройки буков, там будут и кривые и углы и прямоые участки.
Re: Графити бот и блок управления EggBot
Добавлено: 23 июл 2012, 23:12
2cme
Nick писал(а):Не, если зеркально, то надо двигатели местами поменять... наверное

Кстати, зеркально это если с какой стороны смотреть?

Поменял местами, посмотрю что получится.
Nick писал(а):Нарисовал бы что-нибудь по сложнее сразу, например надпись какую-нибудь из пары-тройки буков, там будут и кривые и углы и прямоые участки.
Если посложнее, то дольше рисует и не всегда можно понять чаго нарисовал...
Для тестов 1234 самое то (; Быстро рисует, и понятно где что должно быть.
Re: Графити бот и блок управления EggBot
Добавлено: 24 июл 2012, 12:13
2cme
Nick, смотрел файлы, где ошибка?
Re: Графити бот и блок управления EggBot
Добавлено: 24 июл 2012, 12:20
Nick
А что я должен был посмотреть ?

Re: Графити бот и блок управления EggBot
Добавлено: 24 июл 2012, 12:22
2cme
Nick писал(а):Т.е. просто на 90 градусов повернул?
Скинь оригинал svg
Вот, почему неправильно нарисовал рисунок. Причем не только повернуто на 90 граносов, но и идут искажения связанные с этим поворотом.
Re: Графити бот и блок управления EggBot
Добавлено: 24 июл 2012, 13:02
Nick
Суть какая:
1. сначала нужно правильно настроить расстояние между блоками моторов.
2. потом обнулить все оси, т.е. сделать длинную веревку по X и выйти в 0 по Y. Сказать Y=0. Потом тоже самое с X - делаем выход по X в 0, Y - длинный. Длинную веревку нужно отматывать (G0 X100), чтобы не сбилась вторая координата и не порвать станок
3. Потом едем в начальное положение, то, которое задавалось в Gcodetools (не помню обязательно это или нет, но лучше сделать)
4. Потом уже печатаем.
возможно у тебя просто были сбиты нули осей...
Re: Графити бот и блок управления EggBot
Добавлено: 24 июл 2012, 13:12
2cme
Точки крепления моторов выставлены согласно рисунку(пункт 1), перо выстановлено в начальую позицию 105,50 (пункт 3).
Вот только для чего нужно делать обнуление осей (пункт 2) не пойму, ведь перемещение пера роисходит на расстояние от предыдущей точки.
И чем обусловлен поворот нарисованного рисунка, тож не понятно.