Nong Lam University Industrial Robotic Master PHUC NGUYEN phucnt@hcmuaf.edu.vn Christian ANTOINE Christian.antoine@univ-lyon1.fr Sébastien HENRY sebastien.henry@univ-lyon1.fr 1
Robotics and Vision Industrial Robot architecture Arm position 1) Join position. 2) Cartesian position. Move the robot 1) Join move. 2) Cartesian move. 1 2
Robot Architecture WMS Working Mode Selection MCP Manual Control Panel Flange Arm Controler (CS8C) 2 3
Robot Architecture Arm Controler Control voltage Program Hall voltage brushless motor with position sensor Hall-effect 3 4
ATTENTION - VERY DANGEROUS 4 5
DIMENSION OF ROBOT 6
DIMENSION OF ROBOT 7
TS60 WORK AREA 7 8
WORK SPACE OF TS 60 8 9
SAFETY WORK-SPACE 9 10
Arm position Joint position Axis 1, revolute axis, value of the angle of rotation of part B relative to part A Axis 2, revolute axis, value of the angle of rotation of part C relative to part B Axis 3, linear axis, value of linear position of part D relative to part C Axis 4, revolute axis, value of the angle of rotation of part D relative to part C d 3 θ 2 C B D A Hall voltage Conversion Joint position θ 1 θ 2 d 3 θ 4 θ 4 θ 1 10 11
Arm position- BÀI TOÁN ðộng HỌC Cartesian position Calculation of the Cartesian position from the angular position Data: Joint position (θ 1 θ 2 θ 3 θ 4 θ 5 θ 6 ) Geometry of the robot (dimension of part A, B, C, etc) Only one solution! Hall voltage Conversion Joint Pos. θ 1 θ 6 Calculation R mf /R fw Cartesian position R mb /R fw 6 components x F / W, yf / W, zf / W, RxF / W, RyF / W, RzF / W geometric model 11 12
Arm position Display on MCP Joint position Cartesian positions Hall voltage Conversion Joint Pos. θ 1 θ 6 Calcul R mf /R fw Cart. Pos. R mf /R fw Frame schift Pos. Cart. R mt /R fw Frame schift Pos. Cart. R mt /R fu Geometric model R mt : tool frame R fu : user frame Defined by you! 12 13
BÀI TẬP LỚN 1 TÍNH TOÁN ðộng HỌC CHO ROBOT DỰA VÀO KÍCH THƯỚC CỦA ROBOT. THIẾT LẬP LẠI MA TRẬN DH CHO ROBOT SCARA TS60 3 bậc. TÍNH BÀI TOÁN ðộng HỌC THUẬN VỊ TRÍ CHO ROBOT. SO SÁNH K T QU TÍNH TOÁN V I PH N MÔ PH NG 3D. 13 14
Robot Controller ðiều khiển ROBOT. Arm Controller Control voltage Program Hall voltage brushless motor with position sensor Hall-effect 14 15
Principle Moving a robot A robot always moves from its current position to a point! Moving to a join position A join position is defined by the value of six axis (θ1 θ2 θ3 θ4 θ5 θ6). For the robot move to a join point is to reach this position at a given speed in a specific mode and a defined termination. Control voltage Join position speed Mode termination control Hall voltage 6 Motors + 6 sensors Control loop in the speed and the position 15 16
Mode: Các kiểu di chuyển của robot : Moving a robot There are three moving modes to reach a position: Joint (minimize time cycle): dịch chuyển tối thiểu thời gian dịch chuyển. Linear: dịch chuyển theo ñường thẳng cho robot. Circular: dịch chuyển theo nửa ñường tròn.(ñường cong có bán kính xác ñịnh) X Currente TCP position Linear Speed at mm/s Join Speed at % of max speed X Join Position In Joint mode, the exact trajectory is not known when programming. There is therefore a risk of collision during testing phases! (out of software limits). 16 17
Termination Moving a robot There are two different termination : cách stop robot tại một ñiểm lập trình. Passing by the point Passing near the point (minimize time cycle) P2 X P2 X X P1 Passing by the point The speed at P2 is necessarily zero X P3 X P1 Passing near the point X P3 Passing near a point, the exact path is not always known when programming. There is therefore a risk of collision during testing phases according to robot manufacturers! 17 18
Configuration of 6 axis robot Moving a robot 18 19
Configuration of 4-axis robot Moving a robot 19 20
Moving a robot Move to cartesian position: bộ nội suy ñiểm toạ ñộ decart trong robot. ðược ñịnh nghĩa bởi người dùng. Cart Pos. R mt /R fu Frame shift Cart Pos. R mf /R fw Calcul Join Pos. θ 1 θ 6 Control Pos. Vit. voltage volatge Brushless motors R mu : user frame R mo : tool frame inverse geometric model Model Competences of robot manufacturer! 20 21
Moving a robot Controller APPLICATION Interpretation of instructions TRANSFORMATION Calculation of axis angle Frame schift + inverse geometric model Control Position and speed control 21 22
STAUBLI SOFTWARE FOR SIMULATION OF ROBOT Chạy chương trình : Start-> programs Staubli SRS 7.3 staubli robot 7.3 User of Robot Phần mềm quản lý,mô phỏng, lập trình ứng dụng trước khi cho robot hoạt ñộng. 22 23
CELL MANAGERS 23 24
CELL MANAGERS 24 25
VAL 3 STUDIO : 25 26
VAL 3 STUDIO : 26 27
VAL 3 STUDIO : Program here 27 28
EMULATOR CS8: BỘ ðiều KHIỂN GIẢ LẬP MCP 28 29
TAB 3D STUDIO 29 30
TRANSFER MANAGER 30 31
REMOTE ACCESS 31 32
32 33
BEGIN OF APPLICATION. Application 1: di chuyển nội suy ñến một ñiểm. Application 2: di chuyển tuyến tính ñến một ñiểm. Application 3: di chuyển theo cung tròn. Application 4: di chuyển kết hợp : thẳng và cung tròn. Application 5: Pick and Place object. Application 6: operator and robot. 33 34
APPLICATION 1 DI CHUYỂN NỘI SUY ðến MỘT ðiểm: MOVEJ(pPot1, fvacumm,mnomseed): với yêu cầu tối thiểu hoá thời gian di chuyển của robot. Movej(pPot1, Tool, Speed).: Waitendmove(). 34 35
DI CHUYỂN THEO ðường THẲNG: APPLICATION 2 MOVEL(pPOT1, Ftool, normspeed ) ppot1: x=0; y=0 ; z=5; rx=180; ry=0; rz=103. ppot2: x=0 ; y =100 ; z=5; ppot3: x= -240 ; y=100 ; z=5; ppot4: x= -240 ; y=0 ; z=5; movel(ppot1,fvacuum,mlinear) : di chuyen theo duong thang.. waitendmove() movel(ppot2,fvacuum,mnomspeed) waitendmove() movel(ppot3,fvacuum,mnomspeed) waitendmove() movel(ppot4,fvacuum,mnomspeed) waitendmove() movel(ppot1,fvacuum,mlinear) waitendmove() 35 36
Di CHUYỂN THEO CUNG TRÒN: APPLICATION 3 MOVEC(intermediat, destination, Normspeed). movej(ppot1,fvacuum,mnomspeed)// di chuyen den DIEM BẮT ðầu VẼ... waitendmove() movec(ppot2,ppot3,fvacuum,mnomspeed) // ve từ bắt ñầu ñến ðiểm TRUNG GIAN VÀ ðiểm KẾT THÚC... waitendmove() movej(ppot3,fvacuum,mnomspeed) // DIEM BAT DAU VE... waitendmove() movec(ppot4,ppot1,fvacuum,mnomspeed) // DIEM TRUNG GIAN VA KET THUC... waitendmove() 36 37
DI CHUYỂN KẾT HỢP TUYẾN TÍNH VÀ CUNG TRÒN CHỮ U. APPLICATION 4 movej(ppot1,fvacuum,mnomspeed) waitendmove() movel(ppot2,fvacuum,mnomspeed) waitendmove() movec(ppot3,ppot4,fvacuum,mnomsp eed) waitendmove() movel(ppot5,fvacuum,mnomspeed) waitendmove(). 37 38
APPLICATION 5: PICK AND PLACE OBJECT Yêu cầu : Tốc độ khi xuống gắp sản phẩm và nâng sản phẩm lên tương đối chậm, sau đó tốc độ di chuyển qua điểm để đặt chi tiết nhanh hơn, sau đó robot đặt chi tiết xuống và rút chi tiết lên với tốc độ chậm, sau đó robot quay trở lại điểm ban đầu với tốc độ nhanh. 38 39
CODE CHƯƠNG TRÌNH : movej(ppot1,fvacuum,mnomspeed) waitendmove() movej(appro(ppot1,{0,0,70,0,0,0}),fvacuum,mpick) waitendmove() movel(ppot1,fvacuum,mpick) waitendmove() movej(ppot2,fvacuum,mnomspeed) waitendmove() movej(appro(ppot2,{0,0,70,0,0,0}),fvacuum,mnomspeed) waitendmove() movel(ppot2,fvacuum,mpick) movel(ppot1,fvacuum,mnomspeed) waitendmove() 39 40
BÀI TẬP LỚN SỐ 2 : Hãy viết chương trình thể hiện robot di chuyển theo biên dạng sau : (các toạ ñộ ñiểm SV tự lựa chọn.) 40 41
THE END OF THE COURSE.. 41 42
Thank You For Attention. 42 43