Broidery.Ru http://broidery.ru/forum/ |
|
Самодельный лазер http://broidery.ru/forum/viewtopic.php?f=191&t=459142 |
Страница 2 из 2 |
Автор: | Yuriy [ 17 май 2015, 03:40 ] |
Заголовок сообщения: | Re: Самодельный лазер |
2W лазер -8000-12000 руб. в зависимости от того, где будете брать. контроллер 300 -400 руб. коробка и вентилятор для дымоотсоса - 1000 руб. |
Автор: | Yuriy [ 17 май 2015, 04:00 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Лучше использовать инфракрасный диод, типа такого: http://www.ebay.com/itm/Focusable-2-4W-808nm-Infrared-Laser-Diode-Module/251758990876?_trksid=p2047675.c100005.m1851&_trkparms=aid%3D222007%26algo%3DSIC.MBE%26ao%3D1%26asc%3D30545%26meid%3Dda44a43768934147949ed8b6c72d53c4%26pid%3D100005%26rk%3D1%26rkt%3D6%26sd%3D201054175726&rt=nc |
Автор: | Yuriy [ 26 янв 2016, 15:39 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Лазер с блоком питания 12000р. брал в России, в комплекте запасные линзы и очки. Плата контроллера Ардунио микро 90 руб. с EBay. Экран 16*2 был, но не понадобился, регулировать мощность не приходится, режем на 100% регулируем скоростью машины и длиной стежка. два куска провода и разъёмы, этого добра хватает дымоотсос 1000-2000 р. примерно |
Автор: | Evgeni Art [ 26 янв 2016, 19:36 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Юрий, может за это время у вас появился новый опыт использования вашей установки. Могли бы поделиться принципиальной схемой. С вашим интересом конечно? |
Автор: | Yuriy [ 27 янв 2016, 15:51 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Конечно поделюсь только схемы как таковой нет, нужно будет в офисе посмотреть, нарисовать. прошивку контроллера выложу, и схему подключения к машине. только немного позже.. |
Автор: | Yuriy [ 27 янв 2016, 15:56 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Прошивка на ardunio: Код: #include <LiquidCrystal.h> #include <EEPROM.h> /* Создаём объект LCD-дисплея, используя конструктор класса LiquidCrystal * с 6ю аргументами. Библиотека по количеству аргументов сама определит, * что нужно использовать 4-битный интерфейс. * Указываем, к каким пинам Arduino подключены выводы дисплея: * RS, E, DB4, DB5, DB6, DB7 */ LiquidCrystal lcd(12, 11, 5, 4, 3, 2); long previousMillis = 0; // предыдущее время int adresNi = 0; // адрес ЕЕпром значения датчика 11 иглы int adresKm = 1; // адрес ЕЕПРОМ коэфф мощности byte Ni; // значение датчика 11 иглы /4 byte Km; //Коэфф мощности const int SPEEDv = 600; //Номинальные обороты вала const int buttonUp = 16;//кнопка вверх const int buttonDown = 10;//Кнопка вниз const int LASER = 9;//выход лазера 1- горит, 0-не горит ШИМ!!! const int DatI = A1;// вход датчика положения иглы ANALOG const int Dat100 = A0;//вход датчика положения вала (0-100град) ANALOG int flagButtonUp = 0; //флаг нажатия кнопки int flagButtonDown = 0; //флаг нажатия кнопки int SPEEDt = 600; //Текущие обороты вала для начала считаем что 600 об/мин int flag = 0; //флаг оборота void setup() { Serial.begin(9600); lcd.begin(16, 2); // Инициализация ЖК-дисплея lcd.print("LASER!"); // Вывод на дисплей analogWrite(LASER, 0); // не горит pinMode(buttonUp, INPUT);//кнопка вверх pinMode(buttonDown, INPUT);//Кнопка вниз delay(5000); //Ждем 5 сек //pinMode(DatI, INPUT);// вход датчика положения иглы //pinMode(Dat100, INPUT); //вход датчика положения вала digitalWrite(buttonUp, HIGH); //включаем подтягивающий резистор buttonUp digitalWrite(buttonDown, HIGH); //включаем подтягивающий резистор buttonDown Ni = EEPROM.read(adresNi); // Читаем записанное значение датчика иглы Km = EEPROM.read(adresKm); // Читаем записанное значение коэф. мощности, с прошлого включения Serial.print("Ni= "); Serial.println(Ni); Serial.print("Km= "); Serial.println(Km); } void loop() { // НАЖАТИЕ 2 КНОПОК if (digitalRead(buttonUp) == LOW && digitalRead(buttonDown) == LOW ) { //проверяем нажатие кнопок, если 2 кнопки нажати более 2 сек, установим значение датчика 11 иглы Serial.print("nazhaty 2 knopki "); previousMillis = millis(); while (digitalRead(buttonUp) == LOW && digitalRead(buttonDown) == LOW ) { // цикл пока нажаты // Serial.println(previousMillis); if (millis() - previousMillis > 1000){ int Ni = analogRead(DatI) / 4; //чтение значения датчика иглы EEPROM.write(adresNi, Ni); //чтение значения датчика иглы previousMillis = millis(); Serial.print("> 2 sec "); Serial.print("Ni= "); Serial.println(Ni); } } } //КНОПКА ВВЕРХ if (digitalRead(buttonUp) == LOW && flagButtonUp == 0&&digitalRead(buttonDown) == HIGH) { //Нажата кнопка вверх if (Km > 245){ Km=255; } else{ Km = Km + 10; // увеличим мощность на 4% } EEPROM.write(adresKm, Km); //запись значения мощности flagButtonUp = 1; Serial.print("Km= "); Serial.println(Km); } if (digitalRead(buttonUp) == HIGH && flagButtonUp == 1&&digitalRead(buttonDown) == HIGH) { //отпущена кнопка вверх flagButtonUp = 0; } //КНОПКА ВНИЗ if (digitalRead(buttonDown) == LOW && flagButtonDown == 0&&digitalRead(buttonUp) == HIGH) { //Нажата кнопка вниз if (Km < 10){ Km=0; } else{ Km = Km - 10; // уменьшим мощность на 4% } EEPROM.write(adresKm, Km); //запись значения мощности flagButtonDown = 1; Serial.print("Km= "); Serial.println(Km); } if (digitalRead(buttonDown) == HIGH && flagButtonDown == 1&&digitalRead(buttonUp) == HIGH) { //отпущена кнопка вверх flagButtonDown = 0; } //УПРАВЛЕНИЕ ЛАЗЕРОМ if (analogRead(DatI)/4<=Ni+3 &&analogRead(DatI)/4>=Ni-3 ) { // головка на 11 игле (при Ni-5 иногда включалась 12 и 10 игла) if (analogRead(Dat100) > 300) { // вал начал движение previousMillis = millis(); while (analogRead(Dat100) > 300) { // вал начал движение цикл. кнопки не проверяем. flag=1; // флаг поворота вала analogWrite(LASER, Km); // включаем лазер с мощностью Km ждем пока вал станет 100, считаем скорость вращения, привязываем мощность к скорости. Km=255 полна я мощность Serial.print(" Km*SPEEDt/SPEEDv = "); Serial.print(Km*SPEEDt/SPEEDv); Serial.print(" Km = "); Serial.print(Km); Serial.print(" SPEEDt = "); Serial.println(SPEEDt); if ((millis()- previousMillis)<1000) {// вал не крутится 1 сек break; // тушим лазер } } if (flag=1){ SPEEDt=60000/(millis()- previousMillis); // считаем скорость вала об/мин //SPEEDt=600; flag=0; } delay(50); //Ждем 50 мсек, время пропуска окна 100 град. analogWrite(LASER, 0); // вал 100 град. тушим лазер (на время 100 град, или навсегда, если вал остановился) } } } место подключения дисплея можно опустить, не доделано |
Автор: | Evgeni Art [ 27 янв 2016, 21:01 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Фантастика. На Борудане есть Боринг. Можно будет пробовать. Ждем электрической схемы. |
Автор: | Yuriy [ 28 янв 2016, 09:07 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Контроллер использовал такой, в принципе можно любой ARDUNIO, можно даже просто ATMEL контроллер, но тогда придется распаивать питание и заливать прошивку ардунио. Контроллер брал самый дешевый с USB (питание+программирование+отладка) контроллер такой: http://www.ebay.com/itm/Pro-Micro-5V-16MHz-ATMega-32U4-Module-with-2-row-pin-header-For-Leonardo-Selling/400610628809?_trksid=p2047675.c100005.m1851&_trkparms=aid%3D222007%26algo%3DSIC.MBE%26ao%3D1%26asc%3D33877%26meid%3Dba8d09e72f5e49379de556f6501075ba%26pid%3D100005%26rk%3D1%26rkt%3D3%26sd%3D400514883558 распиновка на контроллере нарисована, в программе есть пояснения что к какому пину цепляется. 1,2-две кнопки 3-вход лазера, (TTL вход, по моему есть на всех БП лазеров, обозначен на плате как TTL) 4-вход с датчика номера иглы, у меня датчик представляет собой переменное сопротивление( можно проверить измерив напряжения на датчике, там 3 контакта: земля, +5В, и выход. на выходе напряжение должно меняться в зависимости от номера иглы, от 0В до +5В. 5-вход с датчика положения вала, у меня датчик оптический, представляет собой оптопару, разделенную диском с вырезом, когда вал доходит до 100 градусов, вырез становится напротив оптопары. нужно найти этот датчик, и найти его выход. деталь с 3 ножками, найти на какой ножке появляется напряжение при установке вала на 100 градусов. Если найдете выходы с этих 2-х датчиков, то можно продолжать. Из опыта: - лазер стоит крепить повыше ( легче настроить фокусировку, меньше дыма попадает на линзу) - Лазер по возможность 3 W ( у меня 2W, смесовку гретту режет на 500-700 оборотов, длина стежка 0,2 мм. Синтетику режет быстрее) - белые ткани режет очень плохо (мел, темное мыло и т.д. в помощь ) - у шевронов из смесовки через несколько месяцев начинают вылазить х\б ниточки, синтетику оплавляет намертво) - на лазере, мощность не регулирую, добавляю или убавляю скорость машины. -Лазер нужно крепить жестко к машине чтобы не сбивались настройки, в программе строчку для резки нужно каждый раз смещать на смещение лазера. -Лазер желательно располагать на одной линии с иглами, максимально близко к крайней игле. я просверлил отверстия в радиаторе лазера, и прикрутил на место крепления крышки. - дымоотсос желательно по мощнее, желательно и сверху и снизу. у меня в столе под лазером просверлено отверстие, через фитинг подсоединена гофра. Схему постараюсь скинуть на днях. Пока постарайтесь найти выхода датчиков |
Автор: | arttex [ 02 фев 2016, 10:40 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Сильно! Будем ждать. Огромное спасибо. Будем двигаться в этом направлении. поищем комплектующие. Найдем. Отпишем что и почем! |
Автор: | Zaitca [ 14 мар 2016, 21:55 ] |
Заголовок сообщения: | Re: Самодельный лазер |
Доброго дня! А можно побольше фоток. Как дымоотсос организован. |
Страница 2 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |