Контактный сканер с помощью EMC2
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Сделай скриншот, а то мне это не в чем открыть...
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Вот что получилось.Форма не соответствует действительности.Попробую позже отсканировать прямоугольник,чтоб можно было увидеть искажение
- Вложения
-
- колодка.zip
- (49.46 КБ) 360 скачиваний
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Контактный сканер с помощью EMC2
хммм... да, попробуй с прямоугольником... интересно, что не так?
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Пытаюсь запустить такой G код , EMC2 ругается,что не так?
(Параметры)
#<xstart> = 0
#<xend> = 100
#<xstep> = 0.1
#<dots_per_round> = 1000
(точек за 1 оборот)
#<speed> = [#<xstep>*#<dots_per_round>/1000]
(скорость рассчитана на то, что sampler работает 1000 раз в секунду)
(идем в 0)
G0 X#<xstart> A0
(Включаем шпиндель/sampler)
M3
(Идем по спиральке. Ось A в градусах)
G1 X<#xend> A[[#<xend>-#<xstart>]/#<xstep>*360] F#<speed>
(Выключаем шпиндель/sampler)
M5
(Параметры)
#<xstart> = 0
#<xend> = 100
#<xstep> = 0.1
#<dots_per_round> = 1000
(точек за 1 оборот)
#<speed> = [#<xstep>*#<dots_per_round>/1000]
(скорость рассчитана на то, что sampler работает 1000 раз в секунду)
(идем в 0)
G0 X#<xstart> A0
(Включаем шпиндель/sampler)
M3
(Идем по спиральке. Ось A в градусах)
G1 X<#xend> A[[#<xend>-#<xstart>]/#<xstep>*360] F#<speed>
(Выключаем шпиндель/sampler)
M5
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
к М3 надо S указать...
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Добавил
s1000
пишет
bad number format (conversion failed) parsing"
s1000
пишет
bad number format (conversion failed) parsing"
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Не пойму что нужно в HAL добавить ,чтоб сделать поправкуNick писал(а):Ну берем компонент sum2, на один из входов подаем нужный пин, на второй - поправку (40), а на sampler выводим sum2.out.
http://www.linuxcnc.org/docs/html/man/man9/sum2.9.html
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
loadrt sum2
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 твой_пин
net out sum2.0.out твой_пин
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 твой_пин
net out sum2.0.out твой_пин
Последний раз редактировалось nkp 28 янв 2013, 23:19, всего редактировалось 2 раза.
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Вставил в HAL
loadrt sum2
addf sum2.0 servo-thread
net in1 sum2.0.in0 40
net in2 sum2.0.in1 motion.analog-in-00
net out sum2.0.out sampler.0.pin.2
выдало ошибку
сканер.hal:93: Pin '40' does not exist
6169
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
подправил вверху
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Вот часть моего HAL
# ---Encoder feedback signals/setup---
setp hm2_7i43.0.encoder.03.counter-mode 0
setp hm2_7i43.0.encoder.03.filter 0
setp hm2_7i43.0.encoder.03.index-invert 1
setp hm2_7i43.0.encoder.03.index-mask 0
setp hm2_7i43.0.encoder.03.index-mask-invert 0
setp hm2_7i43.0.encoder.03.scale [AXIS_1]ENCODER_SCALE
#motion.analog-in-00net y-pos-fb => motion.analog-in-00
net y-pos-fb <= hm2_7i43.0.encoder.03.position
net y-vel-fb <= hm2_7i43.0.encoder.03.velocity
net y-pos-fb => axis.1.motor-pos-fb
net y-index-enable axis.1.index-enable <=> hm2_7i43.0.encoder.03.index-enable
net y-pos-rawcounts <= hm2_7i43.0.encoder.03.rawcounts
loadrt sum2
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 motion.analog-in-00
net out sum2.0.out sampler.0.pin.2
#net in2 sum2.0.in1 motion.analog-in-00
#net out sum2.0.out sampler.0.pin.2
loadrt sampler depth=1000 cfg="FFF"
addf sampler.0 servo-thread
net xpos-cmd axis.0.motor-pos-cmd <= hm2_7i43.0.stepgen.00.position-cmd => sampler.0.pin.0
net apos-cmd axis.3.motor-pos-cmd <= hm2_7i43.0.stepgen.02.position-cmd => sampler.0.pin.1
#net y-pos-fb => sampler.0.pin.2
net spindle-enable <= motion.spindle-on => sampler.0.enable
loadusr halsampler file2.txt
выдает такую ошибку
сканер.hal:96: Pin 'sampler.0.pin.2' does not exist
6943
# ---Encoder feedback signals/setup---
setp hm2_7i43.0.encoder.03.counter-mode 0
setp hm2_7i43.0.encoder.03.filter 0
setp hm2_7i43.0.encoder.03.index-invert 1
setp hm2_7i43.0.encoder.03.index-mask 0
setp hm2_7i43.0.encoder.03.index-mask-invert 0
setp hm2_7i43.0.encoder.03.scale [AXIS_1]ENCODER_SCALE
#motion.analog-in-00net y-pos-fb => motion.analog-in-00
net y-pos-fb <= hm2_7i43.0.encoder.03.position
net y-vel-fb <= hm2_7i43.0.encoder.03.velocity
net y-pos-fb => axis.1.motor-pos-fb
net y-index-enable axis.1.index-enable <=> hm2_7i43.0.encoder.03.index-enable
net y-pos-rawcounts <= hm2_7i43.0.encoder.03.rawcounts
loadrt sum2
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 motion.analog-in-00
net out sum2.0.out sampler.0.pin.2
#net in2 sum2.0.in1 motion.analog-in-00
#net out sum2.0.out sampler.0.pin.2
loadrt sampler depth=1000 cfg="FFF"
addf sampler.0 servo-thread
net xpos-cmd axis.0.motor-pos-cmd <= hm2_7i43.0.stepgen.00.position-cmd => sampler.0.pin.0
net apos-cmd axis.3.motor-pos-cmd <= hm2_7i43.0.stepgen.02.position-cmd => sampler.0.pin.1
#net y-pos-fb => sampler.0.pin.2
net spindle-enable <= motion.spindle-on => sampler.0.enable
loadusr halsampler file2.txt
выдает такую ошибку
сканер.hal:96: Pin 'sampler.0.pin.2' does not exist
6943
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
не знаком с этим sampler-ом
почему 2 ?
можна весь хал посмотреть?
почему 2 ?
можна весь хал посмотреть?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
я так понял "2" - это номер колонки
а тип входа нужно определять при объявлении компонента
может с этим связано??
а тип входа нужно определять при объявлении компонента
может с этим связано??
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Да 2 это номер колонки текстового файла координат.nkp писал(а):я так понял "2" - это номер колонки
а тип входа нужно определять при объявлении компонента
может с этим связано??
раньше было так
net xpos-cmd axis.0.motor-pos-cmd <= hm2_7i43.0.stepgen.00.position-cmd => sampler.0.pin.0
net apos-cmd axis.3.motor-pos-cmd <= hm2_7i43.0.stepgen.02.position-cmd => sampler.0.pin.1
net y-pos-fb => sampler.0.pin.2
Hal только завтра выложу(я уже за другим компьютером)
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Вот мой HaL рабочий,без компонента sum2
- Вложения
-
- сканер.hal.tar.gz
- (1.23 КБ) 1009 скачиваний
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Пока не определюсь с методом сканирования и правильными настройками, сканы не буду выкладывать,чтоб не вводить в заблуждение из за своих ошибок.Nick писал(а):хммм... да, попробуй с прямоугольником... интересно, что не так?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
ты используешь пин прежде чем объявил компонентgendos писал(а):выдает такую ошибкусканер.hal:96: Pin 'sampler.0.pin.2' does not exist6943
поэтому чаще все объявления компонентов и добавление их функций располагают вверху файла
-
gendos
- Мастер
- Сообщения: 1117
- Зарегистрирован: 06 июл 2011, 15:26
- Репутация: 81
- Настоящее имя: Геннадий
- Откуда: Ростов-на-дону
- Контактная информация:
Re: Контактный сканер с помощью EMC2
Изменил HAL
появился в выходном файле offset 40 ,но не прибавляет данные с энкодера ,не знаю что написать вместо ?????
loadrt sum2
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 ??????????????????????
net out sum2.0.out sampler.0.pin.2
появился в выходном файле offset 40 ,но не прибавляет данные с энкодера ,не знаю что написать вместо ?????
loadrt sum2
addf sum2.0 servo-thread
setp sum2.0.offset 40
net in sum2.0.in0 ??????????????????????
net out sum2.0.out sampler.0.pin.2
- Вложения
-
- сканер.hal.tar.gz
- (1.28 КБ) 821 скачивание
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Контактный сканер с помощью EMC2
а что пишет просто без 40 ?
в halshow смотрел что там происходит
может ему 40.0 надо прописать....
в halshow смотрел что там происходит
может ему 40.0 надо прописать....
