SlideShare a Scribd company logo
1 of 31
Download to read offline
Как ЧПУ станку в домашней мастерской
не превратиться в мульт героев
“двое из ларца”.
Управляем автоматом на groovy/java.
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что мы знаем о выполнении работы
10/29/16 2010 DB Blue template
2
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что мы знаем о выполнении работы
10/29/16 2010 DB Blue template
3
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что мы знаем о выполнении работы
10/29/16 2010 DB Blue template
4
Они готовы выполнить любое желание,
но делают всё по собственному разумению..
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что мы знаем о выполнении работы
10/29/16 2010 DB Blue template
5
Лучше день потерять,
потом за пять минут долететь.
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Числовое программное управление.
В промышленности.
10/29/16 2010 DB Blue template
6
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Числовое программное управление.
В мастерской.
10/29/16 2010 DB Blue template
7
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
● Работы по дереву;
● Помощь в ремонте;
● Раскрой пластика;
● Гравировка надписей;
● Изготовление запчастей;
● Рекурсия — ЧПУ :-)
В чем разница с 3D принтером и плоттером?
Что можно делать в мастерской на ЧПУ
10/29/16 2010 DB Blue template
8
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
№1 - Безопасность работ
10/29/16 2010 DB Blue template
9
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
№1 - Безопасность работ
10/29/16 2010 DB Blue template
10
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
G-code
10/29/16 2010 DB Blue template
11
● G-code (ISO 6983, RS274D) - эсперанто для
станков;
● Текстовый формат;
● Расширения G-code производителями ЧПУ.
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
G-code
10/29/16 2010 DB Blue template
12
M3 S1000
G21 (mm)
G0 Z5
G0 X0 Y0
G1 Z-1 F80.0
G1 X25 Y50 Z-1 F100
G1 X50 Y0 Z-1
G1 X0 Y0 Z-1
G0 Z5
M5
M2
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Дизайнерам ближе векторный редактор: GCodeTools
10/29/16 2010 DB Blue template
13
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
А кому-то 3D моделирование и BlenderCAM
10/29/16 2010 DB Blue template
14
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Системы CAD/CAM: FreeCAD
10/29/16 2010 DB Blue template
15
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Системы CAD/CAM: HeeksCAD
10/29/16 2010 DB Blue template
16
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что именно управляет станком?
10/29/16 2010 DB Blue template
17
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
ПО: LinuxCNC / Machinekit
10/29/16 2010 DB Blue template
18
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
LinuxCNC — сила в гибкости
10/29/16 2010 DB Blue template
19
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Релейно-контактные схемы (Ladder Diagram)
10/29/16 2010 DB Blue template
20
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
● Почему Android до сих пор на java?
● Привычный многим инструмент для
автоматизации;
● Отправка данных в «облачный» сервис для
сбора и анализа IoT данных;
● Eclipse Kura работает в JVM. Это одна из
доступных и популярных платформ для
шлюзов IoT;
● Сотни готовых компонент в Apache Camel и
Eclipse Kura.
Зачем управлять ЧПУ из JVM
10/29/16 2010 DB Blue template
21
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Java + G-code
10/29/16 2010 DB Blue template
22
//maven dependency com.github.igor-suhorukov:camel-gcode:0.1
import com.github.igorsuhorukov.gcode.GCodeClient;
public class Gcode {
public static void main(String[] args) throws Exception{
String hostname = "beaglebone.local"; int port = 5007;
try (GCodeClient gCodeClient = new GCodeClient(hostname, port)){
System.out.println(gCodeClient.login("EMC", "JVM", "1.0"));
gCodeClient.sendCommand("set mode manual");
gCodeClient.sendCommand("set estop off");
gCodeClient.sendCommand("set machine on");
for(int axis=0; axis<4; axis++)
gCodeClient.sendCommand("set home " + axis);
System.out.println(gCodeClient.sendCommand("get abs_act_pos"));
gCodeClient.sendCommand("set mode mdi");
gCodeClient.sendCommand("set mdi g0 x3 y4");
gCodeClient.sendCommand("set mdi g0 x5 y2");
}
}
}
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Groovy + Apache Camel + GCode
10/29/16 2010 DB Blue template
23
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Groovy + Apache Camel + GCode
10/29/16 2010 DB Blue template
24
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Groovy + Apache Camel + GCode
10/29/16 2010 DB Blue template
25
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
● Некоторые профессии исчезнут
● Профессии, которые будут нужны
Что будет с работой в будущем?
10/29/16 2010 DB Blue template
26
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что будет в будущем?
10/29/16 2010 DB Blue template
27
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Что будет в будущем?
10/29/16 2010 DB Blue template
28
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
Заключение
10/29/16 2010 DB Blue template
29
1. Проект CAD → CAM
(HeeksCAD, BlenderCam, GCodeTools)
2. G-Code
3. ЧПУ + автоматизация процессов
4. Работа
Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”.
Разработка ПО / CEE-SEC(R) 2016
● http://linuxcnc.org
● http://www.machinekit.io
● http://www.freecadweb.org
● http://heeks.net
● https://github.com/cnc-club/gcodetools
● http://linuxcnc.org/docs/html/man/man1/linuxcncrsh.1.html
● http://linuxcnc.org/docs/2.7/html/gcode/g-code.html
● https://github.com/igor-suhorukov/camel-gcode
● https://github.com/igor-suhorukov/camel-gcode/blob/master/Camel
CNC.groovy
Ресурсы
10/29/16 2010 DB Blue template
30
Спасибо!
igor.suhorukov@gmail.com
Спасибо!
igor.suhorukov@gmail.com

More Related Content

Similar to Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Управляем автоматом на groovy/java. (CNC)

Большие проблемы маленьких устройств
Большие проблемы маленьких устройствБольшие проблемы маленьких устройств
Большие проблемы маленьких устройствAlexander Kalouguine
 
Personal robot sk ru
Personal robot sk ruPersonal robot sk ru
Personal robot sk ruAlexander Gan
 
Maksym Antipov Hardware development as a hobby and a job
Maksym Antipov Hardware development as a hobby and a jobMaksym Antipov Hardware development as a hobby and a job
Maksym Antipov Hardware development as a hobby and a jobАліна Шепшелей
 
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"Inhacking
 
Питон в малине
Питон в малинеПитон в малине
Питон в малинеPyNSK
 
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013Moscow.pm
 

Similar to Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Управляем автоматом на groovy/java. (CNC) (6)

Большие проблемы маленьких устройств
Большие проблемы маленьких устройствБольшие проблемы маленьких устройств
Большие проблемы маленьких устройств
 
Personal robot sk ru
Personal robot sk ruPersonal robot sk ru
Personal robot sk ru
 
Maksym Antipov Hardware development as a hobby and a job
Maksym Antipov Hardware development as a hobby and a jobMaksym Antipov Hardware development as a hobby and a job
Maksym Antipov Hardware development as a hobby and a job
 
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"
SE2016 IoT Maksym Antipov "Hardware development as a hobby and a job"
 
Питон в малине
Питон в малинеПитон в малине
Питон в малине
 
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013
Perl для не программистов. Николай Мишин. Moscow.pm 4 июля 2013
 

Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Управляем автоматом на groovy/java. (CNC)

  • 1. Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Управляем автоматом на groovy/java.
  • 2. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что мы знаем о выполнении работы 10/29/16 2010 DB Blue template 2
  • 3. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что мы знаем о выполнении работы 10/29/16 2010 DB Blue template 3
  • 4. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что мы знаем о выполнении работы 10/29/16 2010 DB Blue template 4 Они готовы выполнить любое желание, но делают всё по собственному разумению..
  • 5. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что мы знаем о выполнении работы 10/29/16 2010 DB Blue template 5 Лучше день потерять, потом за пять минут долететь.
  • 6. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Числовое программное управление. В промышленности. 10/29/16 2010 DB Blue template 6
  • 7. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Числовое программное управление. В мастерской. 10/29/16 2010 DB Blue template 7
  • 8. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 ● Работы по дереву; ● Помощь в ремонте; ● Раскрой пластика; ● Гравировка надписей; ● Изготовление запчастей; ● Рекурсия — ЧПУ :-) В чем разница с 3D принтером и плоттером? Что можно делать в мастерской на ЧПУ 10/29/16 2010 DB Blue template 8
  • 9. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 №1 - Безопасность работ 10/29/16 2010 DB Blue template 9
  • 10. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 №1 - Безопасность работ 10/29/16 2010 DB Blue template 10
  • 11. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 G-code 10/29/16 2010 DB Blue template 11 ● G-code (ISO 6983, RS274D) - эсперанто для станков; ● Текстовый формат; ● Расширения G-code производителями ЧПУ.
  • 12. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 G-code 10/29/16 2010 DB Blue template 12 M3 S1000 G21 (mm) G0 Z5 G0 X0 Y0 G1 Z-1 F80.0 G1 X25 Y50 Z-1 F100 G1 X50 Y0 Z-1 G1 X0 Y0 Z-1 G0 Z5 M5 M2
  • 13. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Дизайнерам ближе векторный редактор: GCodeTools 10/29/16 2010 DB Blue template 13
  • 14. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 А кому-то 3D моделирование и BlenderCAM 10/29/16 2010 DB Blue template 14
  • 15. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Системы CAD/CAM: FreeCAD 10/29/16 2010 DB Blue template 15
  • 16. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Системы CAD/CAM: HeeksCAD 10/29/16 2010 DB Blue template 16
  • 17. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что именно управляет станком? 10/29/16 2010 DB Blue template 17
  • 18. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 ПО: LinuxCNC / Machinekit 10/29/16 2010 DB Blue template 18
  • 19. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 LinuxCNC — сила в гибкости 10/29/16 2010 DB Blue template 19
  • 20. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Релейно-контактные схемы (Ladder Diagram) 10/29/16 2010 DB Blue template 20
  • 21. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 ● Почему Android до сих пор на java? ● Привычный многим инструмент для автоматизации; ● Отправка данных в «облачный» сервис для сбора и анализа IoT данных; ● Eclipse Kura работает в JVM. Это одна из доступных и популярных платформ для шлюзов IoT; ● Сотни готовых компонент в Apache Camel и Eclipse Kura. Зачем управлять ЧПУ из JVM 10/29/16 2010 DB Blue template 21
  • 22. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Java + G-code 10/29/16 2010 DB Blue template 22 //maven dependency com.github.igor-suhorukov:camel-gcode:0.1 import com.github.igorsuhorukov.gcode.GCodeClient; public class Gcode { public static void main(String[] args) throws Exception{ String hostname = "beaglebone.local"; int port = 5007; try (GCodeClient gCodeClient = new GCodeClient(hostname, port)){ System.out.println(gCodeClient.login("EMC", "JVM", "1.0")); gCodeClient.sendCommand("set mode manual"); gCodeClient.sendCommand("set estop off"); gCodeClient.sendCommand("set machine on"); for(int axis=0; axis<4; axis++) gCodeClient.sendCommand("set home " + axis); System.out.println(gCodeClient.sendCommand("get abs_act_pos")); gCodeClient.sendCommand("set mode mdi"); gCodeClient.sendCommand("set mdi g0 x3 y4"); gCodeClient.sendCommand("set mdi g0 x5 y2"); } } }
  • 23. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Groovy + Apache Camel + GCode 10/29/16 2010 DB Blue template 23
  • 24. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Groovy + Apache Camel + GCode 10/29/16 2010 DB Blue template 24
  • 25. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Groovy + Apache Camel + GCode 10/29/16 2010 DB Blue template 25
  • 26. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 ● Некоторые профессии исчезнут ● Профессии, которые будут нужны Что будет с работой в будущем? 10/29/16 2010 DB Blue template 26
  • 27. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что будет в будущем? 10/29/16 2010 DB Blue template 27
  • 28. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Что будет в будущем? 10/29/16 2010 DB Blue template 28
  • 29. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 Заключение 10/29/16 2010 DB Blue template 29 1. Проект CAD → CAM (HeeksCAD, BlenderCam, GCodeTools) 2. G-Code 3. ЧПУ + автоматизация процессов 4. Работа
  • 30. Игорь Сухоруков, Как ЧПУ станку в домашней мастерской не превратиться в мульт героев “двое из ларца”. Разработка ПО / CEE-SEC(R) 2016 ● http://linuxcnc.org ● http://www.machinekit.io ● http://www.freecadweb.org ● http://heeks.net ● https://github.com/cnc-club/gcodetools ● http://linuxcnc.org/docs/html/man/man1/linuxcncrsh.1.html ● http://linuxcnc.org/docs/2.7/html/gcode/g-code.html ● https://github.com/igor-suhorukov/camel-gcode ● https://github.com/igor-suhorukov/camel-gcode/blob/master/Camel CNC.groovy Ресурсы 10/29/16 2010 DB Blue template 30