Фотку платы от mial, вставь с нормальным разрешением.
Фотку платы от mial, вставь с нормальным разрешением.
Он наверно еще не получил.Ruzik писал(а):Alxim
Фотку платы от mial, вставь с нормальным разрешением.

У меня тут мысль проскочила - а почему бы не использовать энкодерную ленту и по оси Y? А в меню (или при компиляции программы) можно было бы выбирать, к чему привязываться - то ли к энкодеру, то ли к шагам двигателя.mial писал(а):У меня мысль работает в каком направлении. Так как основание-стол не имеет обратной связи по координатам. То это узел надо делать максимально жестким и застрахованным как от пропуска шагов, так и от случайного отклонения от заданного перемещения.

Расстояние между чёрточками на среднестатистической ленте 0.15-.017 мм. При использовании на каретке, промежуточные значения высчитать с достаточной точностью не так и сложно, ибо каретка движется относительно равномерно и с определённой скоростью, и скорость свою резко поменять не может. А теперь представим, что стол нам нужно двинуть на 20 микрон (шаг разрешения 1200dpi) - что нам пришлёт энкодер?mr_kot писал(а):а почему бы не использовать энкодерную ленту и по оси Y?
Думаю, то же самое, что и по оси Х, когда каретку надо сдвинуть на 20 микрон...Seriyvolk писал(а):А теперь представим, что стол нам нужно двинуть на 20 микрон (шаг разрешения 1200dpi) - что нам пришлёт энкодер?

У HP 800-900 серий энкодеры и лента, и диск 200LPI. Причем если на ленте датчик с логическим выходом, то для диска - с аналоговым. Поэтому можно завести его на АЦП и по отношению амплитуд получать промежуточные значения. 8 уровней даст эффективное разрешение энкодера 1600DPI.Seriyvolk писал(а):Расстояние между чёрточками на среднестатистической ленте 0.15-.017 мм. При использовании на каретке, промежуточные значения высчитать с достаточной точностью не так и сложно, ибо каретка движется относительно равномерно и с определённой скоростью, и скорость свою резко поменять не может. А теперь представим, что стол нам нужно двинуть на 20 микрон (шаг разрешения 1200dpi) - что нам пришлёт энкодер?

А чего там догонять тоAlxim писал(а):![]()
Пока ничего не догоняю, как настроить.

Дык я же вам выше писал http://radiokot.ru/forum/viewtopic.php? ... 6#p2559976 попробуйте по этому принципу.Alxim писал(а):как посчитать?
Чуть раньше была ссылка на статью, у камрада вроде все получилось. Не знаю, как на практике (образцы плат в статье не очень мелкие, такие и ЛУТом повторить не проблема), но в теории вроде все правильно:Белк писал(а):и даже если получится получить сигнал для фокусировки в вертикальном направлении, то для удержания горизонтального положения сигнал получить неоткуда, на текстолите треков нет.



У меня они уже второй месяц идут НГ на носу блин, почта как всегда лежит.Alxim писал(а):Теперь жду HCP3120 с Ebay. очень долго Идут(
Такое возможно и с действующей версией - меняя порядок загрузки и инвертирование слоёв.mial писал(а):AlphaCrow ...Есть одно предложение по программе. Бывает нужно вывести шелк на печать, а он сделан не корректно. Наезжает на контактные площадки. Обычно я избавлялся от этого накладывая на инвертированный слой шелка слоя маски. Таким образом там где не нужно шелк отрезался. Нельзя ли сделать в программе, что бы при использовании опции "Добавить gerber" можно было бы отдельно управлять добавленным гербером в плане позитив негатив?
Да, между двумя соседними штрихами вставляется необходимое количество дополнительных вспышек лазера.urez83 писал(а):1200 получается программными средствами ?
Я думаю это будет уже не очень бюджетное решение. Те коллекторные двигатели которые стоят в принтерах, не позволят позиционировать стол с нужной точностью. Придётся ставить специальные серводвигатели. Оно нам надо?mr_kot писал(а):У меня тут мысль проскочила - а почему бы не использовать энкодерную ленту и по оси Y? А в меню (или при компиляции программы) можно было бы выбирать, к чему привязываться - то ли к энкодеру, то ли к шагам двигателя.
mial писал(а):AlphaCrow Почти все хорошо. Шаговик шагает в обе стороны, лазер моргает и шимится. Непонятка с DC мотором. При выборе любого направления идет ШИМ с DCIN0, c DCIN1 ничего не идет. По идее как я понимаю в зависимости от направления движения ШИМ идет либо DCIN0, а на DCIN1 соответственно 0, либо ШИМ на DCIN1, а на DCIN0 соответственно 0. DCIN2 и DCIN3 коммутируются правильно, либо 1, 0, либо 0, 1. PC817 сигнал на Gate транзисторов дают. А вот HCPL ки не работают из за того что нет сигнала с PB14. Если принудительно подать массу на нужную оптопару, мотор раскручивается с ускорением, но так как сигнала с энкодера нет, то тут же отрубуается.
Монтаж проверил, да и все равно ведь с PB13 (DCIN0) при смене направления не должен идти ШИМ. Так, или я что то путаю?
P.S. Посмотрел инициализацию в программе, а ее там на этот пин и нет. Вот дефайны.Вот сама инициализация.Спойлер
Код: Выделить всё
// выводы устройств. // для тягового двигателя #define pinPWM 13 // шим положительный (ШИМ кан 1). #define pinPWRF 12 // питание движения вперёд. #define pinPWRB 15 // питание движения назад. #define portDC GPIOB #define portDC_CR GPIOB->CRH
Про PB14 (DCIN1) тут ничего нет.Спойлер
Код: Выделить всё
void TIM_Init_PWM(){ // Для ШИМ используем TIM1. // ---------------------------------------------- TIM_TypeDef *timptr=TPWM; SET_PER_PWM // Тактирование таймера. portDC_CR &=~( (PinCR(pinPWM,GPIOCR))| // Очистка бит управления. // (PinCR(pinPWMF,GPIOCR))| // Очистка бит управления. // (PinCR(pinPWMB,GPIOCR))| (PinCR(pinPWRF,GPIOCR))| (PinCR(pinPWRB,GPIOCR)) ); portDC_CR |=( (PinCR(pinPWM,p_a_p50))| // ШИМ выход. (PinCR(pinPWRF,p_o_p50))| // ШИМ выходы. (PinCR(pinPWRB,p_o_p50)) ); timptr->PSC = ((TPWM_CK/PWM_FREQ/PWM_RES)-1); // set prescaler timptr->ARR = (PWM_RES-1); // set auto-reload timptr->CCMR1= TIM_CCMR1_OC2M_1| TIM_CCMR1_OC2M_2| TIM_CCMR1_OC1M_1| TIM_CCMR1_OC1M_2; // PWM mode 6. Channel 1&2 timptr->CCER = TIM_CCER_CC1NE| // Разрешение работы. Только для таймера 1 или 8 TIM_CCER_CC2NE; timptr->BDTR = TIM_BDTR_MOE; // TIM_CCER_CC1NP| // Полярность. // TIM_CCER_CC2NP; timptr->CR1 |= TIM_CR1_CEN; // Разрешение счёта. } // --------------------------------------------