Автор: Пользователь скрыл имя, 02 Апреля 2012 в 19:06, дипломная работа
Промышленная робототехника является одним из новых направлений автоматизации производственных процессов, начало развития, которого в нашей стране относится к последнему десятилетию. Комплексный подход к решению технико-экономических и социальных задач, связанных с внедрением их промышленных роботов (ПР), позволил высвободить около 2000 рабочих. В процессе создания, производства и внедрения ПР приходилось сталкиваться с решением ряда сложных научно-технических проблем. Получен большой, опыт по разработке робототехнических комплексов (РТК) и организации автоматизированного производства на базе ПР
ВВЕДЕНИЕ…………………………………………………………………………….3
1.ВИРТУАЛЬНЫЙ СТЕНД ДЛЯ СБОРКИ ИЗДЕЛИЯ………………………..…...6
1.1 Функции и задачи виртуального стенда………………………………………...6
1.2.1 Состав оборудования………………………………………………………..…..7
1.2.2 Техническое задание…………………………………………………………....14
1.2.3. Робот типа «Гибкая рука»…………………………………………………......15
1.2.4. Контроллер CR 1 – 571…………………………………………………….…..20
1.2.5. Параллельный захват…………………………………………………………..25
2.РАЗРАБОТКА ПРОГРАММЫ УПРАВЛЕНИЯ……...…………….…………….27
2.1.Среда разработки…………………………………………………………….……27
2.2.Язык программирования Melfa Basic IV……………………………………….. 28
2.3. Основные операции……………………………………………………………...29
3.СИСТЕМЫ СИМУЛЯЦИИ И СВЯЗИ…………………………………………….31
БИБЛИОГРАФИЧЕСКИЙ СПИСОК………………………………………………..35
Приложения……………………………………………………………………….36-71
1590 PHELP2 =
(+0.00,-2.00,+40.00,+0.00,+0.
1600 PHELP3 =
(+0.00,+0.00,+100.00,+0.00,+0.
1610
1620 '-----------------------------
1630 ' Test source position
1640 '-----------------------------
1650 *TESTS
1660 IF PFEDAV = 0 THEN
1670 M_00 = 6
1680 GOTO *ENDE
1690 ENDIF
1710
1720 ' Test target position
1730
1740 *TESTT
1750 IF FWORKP = 0 OR FCYL1 = 0 OR FCYL2 = 0 THEN
1760 M_00 = 8
1770 GOTO *ENDE
1780 ENDIF
1790 '-----------------------------
1800 ' Pick workpiece at source position
1810 '-----------------------------
1820 *PICK
1830 MOV PINIT
1840 HOPEN 1
1850 WAIT GROPEN = 1
1860 MOV PHELP1
1870 PICK1 = 40
1880 MOV PPFD,-PICK1
1890 SPD 50
1900 MVS PPFD
1910 DLY 0.5
1920 HCLOSE 1
1930 WAIT GRCLOSE = 1
1940 DLY 1
1950 MVS PPFD+PHELP2
1960 MVS PPFD +PHELP2,-PICK1
1970 '-----------------------------
1980 ' Place workpiece at target position
1990 '-----------------------------
2000 *PLACE
2010 PLACE1 = 35
2020 MOV PHELP1
2030 MOV PPAS+PHELP3
2040 MVS PPAS
2050 DLY 0.5
2060 HOPEN 1
2070 WAIT GROPEN = 1
2080 DLY 0.5
2090 MVS PPAS+PHELP3
2100 MOV PHELP1
2110 MOV PINIT
2120 *ENDE
2130 END
INIT
1070 'Inputs
1080 DEF IO ASTART = BIT,1
1090 DEF IO ASTOP = BIT,2
1100 DEF IO KSWITCH = BIT,3
1110 DEF IO RRESET = BIT,4
1120 DEF IO P1AV = BIT,5
1130 DEF IO P2AV = BIT,6
1140 DEF IO P3AV = BIT,7
1150 DEF IO P4AV = BIT,8
1160 DEF IO FCYL1 = BIT,9
1170 DEF IO FCYL2 = BIT,10
1180 DEF IO FWORKP = BIT,11
1190 DEF IO FED1AV = BIT,12
1200 DEF IO FED2AV = BIT,13
1210 DEF IO PFEDAV = BIT,14
1220 DEF IO GROPEN = BIT,900
1230 DEF IO GRCLOSE = BIT,901
1240 'Outputs
1250 DEF IO HSTART = BIT,0
1260 DEF IO HRESET = BIT,1
1270 DEF IO LEDQ1 = BIT,2
1280 DEF IO LEDQ2 = BIT,3
1290 DEF IO VFCYL1 = BIT,4
1300 DEF IO VFCYL2 = BIT,5
1310 DEF POS PINIT
1320 DEF INTE M1
1330
1340 *LOOP
1350 M1 = 0
1360 HRESET =
1
1370 DLY 0.5
1380 HRESET =
0
1390 DLY 0.5
1400 'IF RRESET = 0 THEN GOTO *LOOP
1410 HRESET =
1
1420 LEDQ1 = 0
1430 LEDQ2 = 0
1440 SERVO ON
1450 VFCYL1 = 0
1460 VFCYL2 = 0
1470 IF P1AV =
1 THEN
1480
LEDQ1 = 1
1490
M1 = 1
1500 ENDIF
1510 IF P2AV =
1 THEN
1520
LEDQ1 = 1
1530
M1 = 1
1540 ENDIF
1550 IF P3AV =
1 THEN
1560
LEDQ1 = 1
1570
M1 = 1
1580 ENDIF
1590 IF P4AV =
1 THEN
1600
LEDQ1 = 1
1610
M1 = 1
1620 ENDIF
1630 IF FED1AV = 0 THEN
1640
LEDQ2 = 1
1650
M1 = 1
1660 ENDIF
1670 IF FED2AV = 0 THEN
1680
LEDQ2 = 1
1690
M1 = 1
1700 ENDIF
1710 IF FWORKP = 1 THEN
1720 LEDQ1 = 1
1730
M1 = 1
1740 ENDIF
1750 IF M1 = 1 THEN GOTO *LOOP
1760 JOVRD 30
1770 MOV PINIT
1780 HOPEN 1
1790 WAIT GROPEN = 1
1800 M_RESET = 1
1810 END
MAIN
1060 Inputs
1070 DEF IO ASTART = BIT,1
1080 DEF IO ASTOP = BIT,2
1090 DEF IO RRESET = BIT,4
1100 'Outputs
1110 DEF IO HSTART = BIT,0
1120 DEF IO HRESET = BIT,1
1130 M_19 = 0
1140 *LOOP1
1150 M_OUTW(0) = 0
1160 M_AUTO = 0
1170 M_RESET = 0
1180 M_EMERG = 0
1190 HRESET = 1
1200 WAIT M_ERR(1) = 0
1210 WAIT M_PSA(1) = 1
1220 XLOAD 1,"INIT"
1230 XRUN 1,"INIT",1
1240 M_EMERG = 0
1250 IF M_EMERG = 1 THEN GOTO *
1260 IF M_RESET = 0 THEN GOTO 1250
1270 M_EMERG = 0
1280 *LOOP2
1290 HSTART = 1
1300 DLY 0.5
1310 HSTART = 0
1320 DLY 0.5
1330 IF M_EMERG = 1 THEN GOTO *LOOP1
1340 IF ASTART = 0 THEN GOTO *LOOP2
1350 HSTART = 1
1360 M_AUTO = 1
1370 IF M_EMERG = 1 THEN GOTO *LOOP1
1380 IF ASTOP = 1 THEN GOTO 1370
1390 M_AUTO = 0
1400 HSTART = 0
1410 GOTO *LOOP2
1420 END
MINST
1280 'Define Inputs
1290 DEF IO ASTART = BIT,1
1300 DEF IO ASTOP = BIT,2
1310 DEF IO KSWITCH = BIT,3
1320 DEF IO RRESET = BIT,4
1330 DEF IO P1AV = BIT,5
1340 DEF IO P2AV = BIT,6
1350 DEF IO P3AV = BIT,7
1360 DEF IO P4AV = BIT,8
1370 DEF IO FCYL1 = BIT,9
1380 DEF IO FCYL2 = BIT,10
1390 DEF IO FWORKP = BIT,11
1400 DEF IO FED1AV = BIT,12
1410 DEF IO FED2AV = BIT,13
1420 DEF IO PFEDAV = BIT,14
1430 DEF IO GROPEN = BIT,900
1440 DEF IO GRCLOSE = BIT,901
1450
1460 'Define Outputs
1470 DEF IO HSTART = BIT,0
1480 DEF IO HRESET = BIT,1
1490 DEF IO LEDQ1 = BIT,2
1500 DEF IO LEDQ2 = BIT,3
1510 DEF IO MASSP1 = BIT,4
1520 DEF IO MASSP2 = BIT,5
1530 DEF IO VFCYL1 = BIT,6
1540 DEF IO VFCYL2 = BIT,7
1550
1560 'Define arrays
1570 DIM PFD(2)
1580 DIM PASM(2)
1590
1600 'Define local variables
1610 DEF INTE
PICK1
1620 DEF INTE
PLACE1
1630 DEF INTE
MSOURCE
1640 DEF INTE
MTARGET
1650 DEF INTE
MANGLE
1660
1670 'Define positions
1680 DEF POS PHELP1
1690 DEF POS PTEST
1700 DEF POS PINIT
1710 DEF POS PANGLE
1720 DEF POS AUXPOS
1730
1740 PHELP1 =
(+100.00,+100.00,+0.00,+0.00,+
1750 PANGLE =
(+0.00,+0.00,+0.00,+0.00,+0.
1760 MANGLE = 0
1770 ACCEL 100 , 100
1780 JOVRD 80
1790 SPD 150
1800 MSOURCE =
M_00
1810 MTARGET =
M_01
1820 MANGLE
= M_02
1830 M_00
= 0
1840 M_01
= 0
1850 M_02
= 0
1860 '-----------------------------
1870 ' Test source position
1880 '-----------------------------
1890 *TESTS
1900 IF (MSOURCE < 1 OR MSOURCE > 2)AND(MSOURCE<>5)
1910 M_00 = 30
1920
GOTO *ENDE
1930 ENDIF
1940 SELECT MSOURCE
1950 CASE 1
1960 IF FED1AV = 0 THEN
1970 M_00 = 6
1980 GOTO *ENDE
1990 ENDIF
2000 BREAK
2010 CASE 2
2020 IF FED2AV = 0 THEN
2030 M_00 = 6
2040 GOTO *ENDE
2050 ENDIF
2060 BREAK
2070 CASE 3
2080 IF FWORKP = 0 OR FCYL1 = 0 OR FCYL2 = 0 THEN
2090 M_00 = 8
2100 GOTO *ENDE
2110 ENDIF
2120 BREAK
2130 CASE 4
2140 IF FWORKP = 0 OR FCYL1 = 0 OR FCYL2 = 0 THEN
2150 M_00 = 8
2160 GOTO *ENDE
2170 ENDIF
2180 BREAK
2190 END SELECT
2200 '-----------------------------
2210 ' Test target position
2220 '-----------------------------
2230 *TESTT
2240 IF (MTARGET < 3 OR MTARGET > 5)
2250 M_00 = 40
2260
GOTO *ENDE
2270 ENDIF
2280 SELECT MTarget
2290 CASE 3
2300 IF FWORKP = 0 OR FCYL1 = 0 OR FCYL2 = 0 THEN
2310 M_00 = 8
2320 GOTO *ENDE
2330 ENDIF
2340 BREAK
2350 CASE 4
2360 IF FWORKP = 0 OR FCYL1 = 0 OR FCYL2 = 0 THEN
2370 M_00 = 8
2380 GOTO *ENDE
2390 ENDIF
2400 BREAK
2410 END SELECT
2420 '-----------------------------
2430 ' Test test position
2440 '-----------------------------
2450 IF (MANGLE < -180 OR MANGLE > 180) THEN
2460 M_00 = 50
2470 GOTO *ENDE
2480 ENDIF
2490 '-----------------------------
2500 ' Pick workpiece at source position
2510 '-----------------------------
2520 *PICK
2530 HOPEN 1
2540 WAIT GROPEN = 1
2550 IF (MSOURCE= 1 OR MSOURCE = 2) THEN
2560
MOV PINIT
2570 PICK1 = 15
2580
MOV PFD(MSOURCE),-PICK1
2590
SPD 150
2600
MVS PFD(MSOURCE)
2610
DLY 0.5
2620 HCLOSE 1
2630 WAIT GRCLOSE = 1
2640
DLY 0.5
2650
MVS PFD(MSOURCE),-PICK1
2660 ENDIF
2670 IF MSOURCE= 5 THEN
2680 PICK1 = 30
2690 PANGLE.C = RAD(-MANGLE)
2700 MOV PTEST*PANGLE ,-PICK1
2710
HOPEN 1
2720 WAIT GROPEN = 1
2730 MVS PTEST *PANGLE
2740 HCLOSE 1
2750 WAIT GRCLOSE = 1
2760
DLY 0.5
2770
MVS PTEST*PANGLE,-PICK1
2780
MOV (PTEST+PHELP1)*PANGLE,-PICK1
2790 ENDIF
2800 '-----------------------------
2810 ' Place workpiece at target position
2820 '-----------------------------
2830 *PLACE
2835
MOV PINIT
2840 PLACE1 = 50
2850 IF (MTARGET = 3 OR MTARGET =4) THEN AUXPOS = PASM(MTARGET-2)
2860 IF MTARGET = 5 THEN AUXPOS = PTEST
2870 MOV AUXPOS,-PLACE1
2880 MVS AUXPOS
2890 DLY 0.5
2900 HOPEN 1
2910 WAIT GROPEN
2920 MVS AUXPOS,-PLACE1
2930 IF MTARGET = 5 THEN MOV AUXPOS,-PLACE1
2940 IF (MTARGET =3 OR MTARGET = 4) THEN MOV PINIT
2950
2960 *ENDE
2970 END
MP
1270 'Inputs
1280 DEF IO P1AV = BIT,5
1290 DEF IO P2AV = BIT,6
1300 DEF IO P3AV = BIT,7
1310 DEF IO P4AV = BIT,8
1320 DEF IO GROPEN = BIT,900
1330 DEF IO GRCLOSE = BIT,901
1340 'definitions
1350 DEF INTE PICK1
1360 DEF INTE PLACE1
1370 DEF INTE MSOURCE
1380 DEF INTE MTARGET
1390 DEF POS PHELP1
1400 DEF POS PHELP2
1410 DEF POS PINIT
1420 DIM PPAL(15)
1430 ACCEL 80
, 80
1440 JOVRD 50
1450 SPD 100
1460 MSOURCE=M_00
Информация о работе Автоматизация технологического процесса на базе стенда «StationAssemblyRV3SB»