WO2021246416A1 - プログラミング装置 - Google Patents
プログラミング装置 Download PDFInfo
- Publication number
- WO2021246416A1 WO2021246416A1 PCT/JP2021/020897 JP2021020897W WO2021246416A1 WO 2021246416 A1 WO2021246416 A1 WO 2021246416A1 JP 2021020897 W JP2021020897 W JP 2021020897W WO 2021246416 A1 WO2021246416 A1 WO 2021246416A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image pickup
- icon
- command
- programming
- program
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1658—Programme controls characterised by programming, planning systems for manipulators characterised by programming language
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/42—Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31474—Icon display for quick access of detailed information
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32162—Tasks or control icons are linked to form a job
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40392—Programming, visual robot programming language
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40607—Fixed camera to observe workspace, object, workpiece, global
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40613—Camera, laser scanner on end effector, hand eye manipulator, local
Definitions
- the present invention relates to a programming device for an industrial machine.
- robot programming is performed using text-based instructions, so the instructor needs knowledge of the robot programming language.
- a program creation device capable of programming using an icon representing each instruction of the robot control has been proposed (for example, Patent Document 1). ).
- the instruction group for programming in a robot system equipped with an image pickup device includes commands corresponding to a function of capturing an object by using the image pickup device and processing the captured image to detect the object.
- an operation of inserting the command statement corresponding to the function using the image pickup device into the robot control program is performed. After that, it is necessary to separately select and set the image pickup device to be operated by the command statement.
- the number of image pickup devices arranged in the robot system may be multiple, in addition to the case of one.
- the operator needs to insert a plurality of command statements corresponding to the functions of the image pickup device into the program, and then repeat the selection of the image pickup device to be operated by each of the inserted command statements, further increasing the burden on the operator.
- a programming device capable of reducing the burden on an operator who creates a control program including instructions corresponding to the functions of the image pickup device is desired.
- One aspect of the present disclosure is a programming device for programming an industrial machine, which acquires information about an image pickup device connected to a control device of the industrial machine, and based on the acquired information, the image pickup device. It is a programming device including a command generation unit for generating an icon or a command statement using an image acquired in the above, and a command display unit for displaying the generated icon or the command statement on a display screen.
- FIG. 1 It is a figure which shows the structure of the robot system which includes the teaching apparatus (programming apparatus) which concerns on one Embodiment. It is a functional block diagram of a teaching device. It is a flowchart which shows instruction generation and display processing. This is the first example of creating and displaying an icon of an image pickup apparatus by command generation and display processing. This is a second example of creating and displaying an icon of an image pickup apparatus by command generation and display processing. This is an example of the screen displayed when the details tab is pressed on the program creation screen. This is an example of a program creation screen for detailed programming related to the function of the image pickup device. As a comparative example, it is a figure which shows the example of the program creation screen based on the text in a general teaching apparatus. It is a figure which shows the example of the program creation screen based on the text in this embodiment.
- FIG. 1 is a diagram showing a configuration of a robot system 100 including a teaching device (programming device) 10 according to an embodiment.
- the robot system 100 is connected to a robot 30 having a hand 31 mounted on the tip of an arm, visual sensors 41 and 42, a robot control device 20 for controlling the robot 30, and a robot control device 20.
- the teaching device 10 is included.
- the robot 30 is a vertical articulated robot here, but other types of robots may be used.
- the robot control device 20 controls the operation of the robot 30 according to a control program or a command from the teaching device 10.
- the robot control device 20 may have a configuration as a general computer having a CPU, a ROM, a RAM, a storage device, an operation unit, a display unit, an input / output interface, a network interface, and the like.
- the visual sensor 41 is attached to the tip of the arm of the robot 30.
- the visual sensor 42 is fixed at a position where the object 1 can be photographed in the work space where the robot 30 is installed.
- the visual sensors 41 and 42 detect the position of the object 1, and the hand 31 of the robot 30 handles the object 1 on the workbench 2.
- the visual sensors 41 and 42 are connected to the robot control device 20 and operate under the control of the robot control device 20.
- the robot control device 20 also has a function as an image processing device that acquires an image captured by a visual sensor (41, 42) and performs image processing such as object detection on the captured image.
- the robot control device 20 holds a model pattern of an object, and detects the object by putter matching between the object and the model pattern in the captured image.
- the robot control device 20 can correct the teaching position according to the detected position of the object 1 and execute the removal of the object 1 or the like.
- the visual sensors 41 and 42 may be a camera (2D camera) that captures a shade image or a color image, or a stereo camera or a 3D sensor (3D camera) that can acquire a distance image or a 3D point group.
- the visual sensor 41 is a 2D camera
- the visual sensor 42 is a 3D camera.
- FIG. 1 shows an example in which a total of two image pickup devices, one 2D camera and one 3D camera, are arranged in the robot system 100, the number of image pickup devices included in the robot system 100 is shown. May be one, or may be a plurality of three or more. Further, a plurality of image pickup devices of the same type (for example, a plurality of 2D cameras or a plurality of 3D cameras) may be arranged in the robot system 100.
- the teaching device 10 is used to create a control program for causing the robot 30 to perform handling of the object 1.
- the teaching device 10 is, for example, a teaching operation panel, a tablet terminal, or the like connected to the robot control device 20.
- the teaching device 10 may be a programming device (PC or the like) for offline programming.
- the teaching device 10 may have a hardware configuration as a general computer having a CPU, ROM, RAM, storage device, input / output interface, network interface, and the like.
- FIG. 2 is a functional block diagram of the teaching device 10. Note that FIG. 2 also shows the connection relationship between the teaching device 10 and other devices. As shown in FIG. 2, the teaching device 10 includes a command generation unit 11, a command display unit 12, a program editing unit 13, and a program generation unit 14.
- the command generation unit 11 acquires information about one or more image pickup devices connected to the robot control device 20 from the robot control device 20, and uses an image acquired by each of the one or more image pickup devices based on the information.
- An icon or instruction statement representing the above is created in an identifiable representation format for each of the one or more imaging devices.
- the "information about the image pickup device” is information (for example, a product model) that can specify the type of each image pickup device connected to the robot control device 20.
- the command generation unit 11 can specify that the type of the image pickup device provided in the robot system 100 is, for example, a 2D camera (monochrome), a 2D camera (color), or a 3D camera. ..
- the "information about the image pickup device” may further include information that can specify the installation location of the image pickup device.
- the information that can specify the installation location is, for example, information indicating whether the image pickup device is a camera mounted on the robot (hand camera) or a fixed camera fixed in the work space.
- the connection cable of the camera mounted on the robot is wired through the inside of the robot and connected to a specific input / output interface of the robot control device. Therefore, the robot control device is the input / output interface to which the image pickup device is connected.
- more detailed position information for example, coordinate information in the work space in the case of a fixed camera
- information indicating the installation location of the image pickup apparatus may be provided as information indicating the installation location of the image pickup apparatus.
- the camera may have information indicating that the camera is, for example, a hand camera as a part of the product information.
- the instruction generation unit 11 acquires, for example, the following information from the robot control device 20 as information regarding the visual sensors 41 and 42.
- Information about the visual sensor 41 2D camera (color)
- hand camera Information about the visual sensor 42 3D camera, fixed camera
- the instruction generation unit 11 captures each image pickup device connected to the robot control device 20 in an identifiable representation format such as the type, number, and installation location of the image pickup device. It can generate device icons or statements.
- the command display unit 12 displays the above icon or command statement created by the command generation unit 11 in a predetermined display area of the display device 18.
- the program editing unit 13 displays an editing screen (program creation screen) for creating a control program for the robot 30 on the display device 18, and accepts an editing operation of the control program.
- the control program includes a command for controlling the robot 30 and a command for capturing an image by a visual sensor and processing the captured image.
- the program generation unit 14 generates a control program from an icon arranged in the program creation area in the edit screen or a command statement described in the program creation area in the edit screen.
- the first embodiment is an operation example in which the teaching device 10 generates and displays an icon representing a command using an image acquired by the image pickup device
- the teaching device 10 is an image pickup device.
- This is an operation example when a command statement (text) representing a command using an image to be acquired is generated and displayed.
- FIG. 3 is a flowchart showing a process for generating and displaying an icon or a command statement representing a command using an image acquired by an image pickup apparatus (hereinafter, also referred to as command generation and display process). Since the flowchart of FIG. 3 is common to the first embodiment and the second embodiment, the two embodiments will be described below with reference to the flowchart of FIG. 3 as appropriate. The process of FIG. 3 is executed under the control of the CPU of the teaching device 10.
- the teaching device 10 generates and displays an icon representing a command using an image acquired by the image pickup device.
- the command generation unit 11 functions as an icon generation unit
- the command display unit 12 functions as an icon display unit.
- the instruction generation and display processing of FIG. 3 is activated by activating the teaching device 10 or by performing a predetermined operation for opening the program creation screen for the teaching device 10.
- the teaching device 10 program editing unit 13
- 4 and 5 show two examples of the program creation screen 400 created here.
- the program creation screen 400 includes a program creation area 300 and an icon display area 200.
- the teaching device 10 acquires information about the image pickup device connected to the robot control device 20 from the robot control device 20 (step S2).
- the teaching device 10 (command generation unit 11) creates an icon of the image pickup device based on the information about the image pickup device (step S3).
- the teaching device 10 confirms whether or not icons have been created for all the image pickup devices connected to the robot control device 20 based on the information about the image pickup device (step S4).
- the teaching device 10 repeats step S3 for creating an icon for all the image pickup devices connected to the robot control device 20 (S4: NO).
- the process proceeds to step S5.
- step S5 the teaching device 10 (command display unit 12) displays the icon created by the above processing in a predetermined display area (icon display area 200) (step S5).
- an icon may include any thing which graphically expresses a command to various devices by a figure, a pattern, a symbol and the like. Therefore, the icon includes, for example, a graphic object (for example, a block used in puzzle-style graphic programming) as used in a visual programming tool, in addition to those exemplified in the present embodiment.
- FIG. 4 shows a first example of creating and displaying an icon of an image pickup apparatus by command generation and display processing.
- the program creation screen 400 has an icon display area 200 for displaying a list of icons that can be used for programming, and a program creation area 300 for creating a control program by arranging the icons in the order of operation. And include.
- the visual sensor 41 is a 2D camera and the visual sensor 42 is a 3D camera.
- the teaching device 10 (command generation unit 11) generates a graphic icon 201 that imitates the appearance of the 2D camera as an icon of the visual sensor 41 (2D camera).
- FIG. 1 shows a graphic icon 201 that imitates the appearance of the 2D camera as an icon of the visual sensor 41 (2D camera).
- the icon 201 may have the characters "viewed by the 2D camera A" added as a word indicating the function of the icon.
- the teaching device 10 (command generation unit 11) generates a graphic icon 202 that imitates the appearance of the 3D camera as an icon of the visual sensor 42 (3D camera).
- the icon 202 may have the characters "viewed by the 3D camera A” added as a word indicating the function of the icon.
- the teaching device 10 displays the icons 201 and 202 in the icon display area 200 together with the icons 101-104 for controlling (control program) the robot 30. Since the icon 201 and the icon 202 are configured so that the visual sensor 41 (2D camera) and the visual sensor 42 (3D camera) can be distinguished from each other, the operator sees the icons 201 and 202 displayed in the icon display area 200. This makes it possible to instantly grasp the type and number of image pickup devices that can be used (that is, connected to the robot control device 20).
- the program creation screen 400 is provided with a button for switching the display / non-display of the character information (“grab”, “hanasu”, etc.) added to each of the icons 101-104 and 201-202. You may be.
- the icons 101-104 and 201-202 displayed in the icon display area 200 represent the following operation commands.
- Icon 101 Command icon 102 to close the hand and grab the object
- Icon 102 Command icon 103 to open the hand: Command icon 104 to move the tip of the robot arm in a straight trajectory.
- Command icon 201 Detect the position of the object with the 2D camera
- Icon 202 Detect the position of the object with the 3D camera
- the program editing unit 13 accepts an operation by the operator to place the icon displayed in the icon display area 200 in the program creation area 300 by dragging and dropping.
- the program generation unit 14 generates a control program according to an icon arranged in the program creation area 300.
- icons 103, icons 201, icons 101, icons 103, and icons 104 are arranged in the order of operation.
- the tip of the arm of the robot 30 is linearly moved to a target position, the position of the object is detected by the 2D camera, the teaching position is corrected by the detected position, and the object is grasped and moved by the hand 31. Perform the action to make it.
- FIG. 5 shows a second example of creating and displaying an icon of an image pickup apparatus by command generation and display processing.
- both the visual sensor 41 and the visual sensor 42 are 2D cameras.
- the information about the image pickup device acquired from the robot control device 20 by the teaching device 10 includes information about the installation location of the image pickup device in addition to the type of the image pickup device.
- the teaching device 10 (command generation unit 11) is a hand camera in which the visual sensor 41 is arranged at the tip of the arm of the robot 30 based on the information about the image pickup device acquired from the robot control device 20, and the visual sensor.
- 42 is a fixed camera fixed in the work space.
- the teaching device 10 creates an icon 212 as an icon of the visual sensor 41, which includes a figure reminiscent of the camera attached to the tip of the arm of the robot. do.
- the icon 212 may be accompanied by a word (here, “see with a 2D hand camera”) that helps the understanding of the function and the installation location of the icon 212.
- the teaching device 10 (command generation unit 11) generates a graphic icon 211 as an icon of the function of the visual sensor 42, which is reminiscent of the visual sensor 42 being a fixed camera.
- the icon 211 may be accompanied by a word (here, “viewed with a 2D fixed camera”) that helps the understanding of the function and the installation location of the icon 211.
- the teaching device 10 displays the icons 211 and 212 in the icon display area 200 together with the icons 101-104 for controlling the robot 30. Since the icon 211 and the icon 212 are configured so that the visual sensor 41 (hand camera) and the visual sensor 42 (fixed camera) can be identified, the operator sees the icons 211 and 212 displayed in the icon display area 200. This makes it possible to instantly grasp the type, number, and installation location of the image pickup devices that can be used (that is, connected to the robot control device 20).
- the program editing unit 13 accepts an operation by the operator to place the icon displayed in the icon display area 200 in the program creation area 300 by dragging and dropping.
- the program generation unit 14 generates a control program according to an icon arranged in the program creation area 300.
- icons 103, icons 211, icons 101, icons 103, and icons 104 are arranged in the order of operation.
- the tip of the arm of the robot 30 is linearly moved to a target position, the position of the object is detected by the 2D fixed camera, the teaching position is corrected by the detected position, and the object is grasped by the hand 31. Perform the move operation.
- FIG. 6 in the program creation screen 400 as illustrated in FIGS. 4 and 5, the operator selects an icon (for example, icon 201) related to the function of the image pickup apparatus arranged in the program creation area 300, and the program creation screen 400 is shown.
- An example of the program creation screen 400 when the detail tab 262 in the inside is pressed is shown.
- a new creation button 501 and a drop-down menu 502 appear in the lower area of the program creation screen 400.
- the drop-down menu 502 a program related to the function of the image pickup device registered in the teaching device 10 is displayed.
- the operator can open the selected program by selecting the desired program from the drop-down menu 502 and pressing the open button 503.
- a live image 550 of the image pickup device corresponding to the icon (for example, icon 201) selected in the program creation area 300 may be displayed.
- the operator can more reliably recognize which image pickup device corresponds to the icon selected on the program creation area 300 by looking at the live image 550.
- the program editing unit 13 requests the robot control device 20 to transmit a live image of the imaging device to the icon selected in the program creation area 300. It may be realized.
- the lower area of the program creation screen 400 returns to the icon display area 200 for displaying a list of icons, and the operator performs programming of the robot. Return to the state where you can.
- FIG. 7 represents a program creation screen 400A for detailed programming regarding the function of the image pickup apparatus, which is displayed by pressing the new creation button 501 or the open button 503 on the screen of FIG.
- the program creation screen 400A relating to the function of the image pickup apparatus has the same screen configuration as the program creation screen 400 for creating a robot control program.
- the program creation screen 400A includes an icon display area 200A for displaying an icon related to control of the image pickup device, and a program creation area 300A for creating a detailed program of functions related to the image pickup device. Similar to editing a robot control program, the operator selects an icon from the icon display area 200A and arranges it in the program creation area 300A by drag and drop operation to create a detailed program related to the function of the image pickup device. be able to.
- the icons displayed in the icon display area 200A are an imaging icon 252 representing a function related to imaging, a detection icon 253 representing an object detection function, and a correction calculation icon 254 representing the calculation of the correction amount.
- the operator can select each icon arranged in the program creation area 300A, perform a predetermined operation, display the parameter setting screen at the bottom of the program creation screen 400A, and set detailed parameters.
- the parameter setting of the image pickup icon 252 the following setting items are set. ⁇ Exposure time ⁇ Whether LED lighting is on ⁇ Image reduction rate
- the "matching threshold” and the “contrast threshold” are parameters related to the threshold in the image processing for detecting the object. ⁇ Image to be used ⁇ Shape to be found ⁇ Threshold for matching degree ⁇ Threshold for contrast
- the position on the image of the object is obtained based on the detection result of the detection icon 253, and the position on the image is converted into the three-dimensional coordinates of the robot coordinate system to change the teaching position of the robot. Obtain the correction amount for correction.
- vision program 604 the image pickup icon 252 is first arranged, then the auxiliary icon 257 corresponding to the detection operation is arranged, and within the frame of the auxiliary icon 257. Two detection icons 253 are arranged in.
- this vision program 604 the following operations are realized. First, an object is imaged by the image pickup icon 252. Next, the auxiliary icon 257 for detection detects the entire shape of the object, and the two detection icons 253 in the auxiliary icon 257 detect features (for example, holes) on the object. This makes it possible to detect an object having two holes. Next, the coordinates in the robot coordinate system of the object are obtained by the correction calculation icon 254 and used as the data for position correction.
- FIG. 9 shows an example of a text-based program creation screen 400B generated by the teaching device 10 according to the present embodiment
- FIG. 8 shows an example of a text-based program creation screen 140 in a general teaching device as a comparative example. Is shown.
- FIGS. 8 and 9 show a program creation screen for executing the same operation in a robot system including two image pickup devices as shown in FIG. 1.
- FIG. 9 shows a program creation screen 400B displayed by the program editing unit 13 of the teaching device 10 according to the present embodiment.
- the program creation screen 400B includes a program creation area 300B for performing text-based programming.
- a predetermined operation for example, an operation of pressing the instruction list button (not shown) displayed on the program creation screen 400B
- a pop-up menu 200B for displaying a list of instruction statements can be displayed. The operator can insert the instruction statement at the position of the cursor by moving the cursor to the position of the desired line number on the program creation area 300B and selecting the desired instruction statement from the pop-up menu 200B.
- the instruction statement creation and display processing by the teaching device 10 will be described with reference to the flowchart of FIG.
- the process of FIG. 3 is started by starting the teaching device 10 or by performing a predetermined operation for opening the program creation screen in the teaching device 10.
- the teaching device 10 program editing unit 13
- the instruction generation unit 11 acquires information about the image pickup device connected to the robot control device 20 from the robot control device 20 (step S2).
- the information of the two visual sensors can be obtained.
- the two cameras are referred to as camera A and camera B.
- the instruction generation unit 11 creates an instruction statement for each of the two cameras A and B.
- the command generation unit 11 has, for example, the command statements "Camera A Vision Kenshutsu” and “Camera” for instructing each of the camera A and the camera B with respect to the command statement "Vision Kenshutsu” which is a command for instructing the image pickup by the image pickup apparatus. "B Vision Kenshutsu” is generated (step S3). Further, the command generation unit 11 is a command for commanding each of the camera A and the camera B regarding the command statement “Vision Hosei Datastock” which is a command for detecting the position of the object from the captured image. Generate the sentences "Camera A Vision Hosei Data Stock” and “Camera B Vision Hosei Data Stock” (steps S3 and S4).
- the command display unit 12 includes, for example, a command statement relating to the control of the robot in response to a selection operation for the command list button (not shown), and a command statement relating to the function of the image pickup device generated by the command generation unit 11.
- "A Vision Kenshutsu”, “Camera B Vision Kenshutsu”, “Camera A Vision Hosei Datastock”, and “Camera B Vision Hosei Datastock” are included in the pop-up menu 200B and displayed (step S5).
- the operator can instantly grasp the type and number of image pickup devices connected to the robot system.
- FIG. 9 shows a case where two cameras are referred to as “camera A” and “camera B”.
- the “camera A” portion is referred to as “2D hand camera” and “camera B”.
- the command statements are "2D Hand Camera Vision Kenshutsu”, “3D Kotei Camera Vision Kenshutsu”, “2D Hand Camera Vision Hosei Datastock”, and “3D Kotei Camera Vision”.
- the operator can use the control program as described in the program creation area 300B.
- the position of the object is detected by the camera A by the instruction statement (lines 3-4) in which the camera A is directly specified, and the object is corrected while the position of the robot is corrected based on the detected position.
- the gripping motion is realized (lines 6-10).
- the position of the object is detected by the camera B by the instruction statement (lines 13-14) in which the camera B is directly specified, and the object is grasped while correcting the position of the robot based on the detected position. (Lines 16-20).
- the pop-up menu 120 displaying a list of command statements is in a format in which the image pickup device is not specified as a command statement regarding the image pickup device. Only the command statements "Vision Kenshutsu” and "Vision Hosei Datastock” are displayed. In this case, for example, the operator needs to select the command statement "Vision Kenshutsu” from the pop-up menu 120 and insert it into the program creation area 130, and then select the camera used in the command statement "Vision Kenshutsu" as a parameter. In such a pop-up menu 120, the operator cannot grasp the type, number, and installation location of the image pickup apparatus attached to the robot system.
- the first embodiment (FIG. 4, FIG. In the case of FIG. 5)
- the icon in the state where the image pickup device is selected is displayed in the icon display area 200
- the second embodiment (FIG. 9)
- the state in which the image pickup device is selected in the pop-up menu 200B. Statement is displayed.
- the icon 201 is displayed in the icon display area 200.
- the above-described embodiment relates to the creation of a control program in a robot system, but the above-mentioned embodiment is a control in a system in which one or more image pickup devices are connected to control devices of machine tools and other various industrial machines. It can be applied to the programming device of the program.
- the functional block of the teaching device 10 shown in FIG. 2 may be realized by the CPU of the teaching device 10 executing various software stored in the storage device, or may be realized by an ASIC (Application Specific Integrated Circuit) or the like. It may be realized by a configuration mainly composed of hardware.
- ASIC Application Specific Integrated Circuit
- the functional arrangement of the functional block diagram shown in FIG. 2 is an example, and a part of the functions arranged in the teaching device 10 may be arranged on the robot control device 20 side.
- the timing at which the teaching device 10 (command generation unit 11) acquires information about the image pickup device from the robot control device 20 and generates an icon or a command statement is a timing in which the image pickup device is a robot other than the example described in the above-described embodiment. There may be various examples such as the timing of connection to the control device 20.
- the timing at which the teaching device 10 (command generation unit 11) acquires information about the image pickup device from the robot control device 20 and generates an icon or a command statement is set to the robot control device 20 of the image pickup device when the teaching device 10 is started. It may be any of predetermined activation timings such as when the connection is made or when the program creation screen 400 is opened, or it may be a plurality of timings of these activation timings.
- the program that executes the instruction generation and display processing of FIG. 3 in the above-described embodiment is a computer-readable recording medium (for example, a semiconductor memory such as ROM, EEPROM, flash memory, magnetic recording medium, CD-ROM, DVD). -It can be recorded on an optical disk such as ROM).
- a computer-readable recording medium for example, a semiconductor memory such as ROM, EEPROM, flash memory, magnetic recording medium, CD-ROM, DVD.
- -It can be recorded on an optical disk such as ROM).
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
撮像装置の機能に対応する命令を含む制御プログラムの作成を行うオペレータの負担を軽減することのできるプログラミング装置を提供する。 産業機械のプログラミングを行うためのプログラミング装置10であって、産業機械の制御装置20に接続された撮像装置に関する情報を取得し、取得した情報に基づいて、撮像装置で取得する画像を用いる命令を表すアイコン又は命令文を生成する命令生成部11と、生成されたアイコン又は命令文を表示画面上に表示する命令表示部12と、を備えるプログラミング装置10である。
Description
本発明は、産業機械のプログラミング装置に関する。
一般にロボットのプログラミングはテキストベースの命令文を用いて行われるため、教示者はロボットのプログラミング言語の知識が必要となる。他方、ロボットの制御プログラムの教示者による直感的な入力を支援するために、ロボット制御の各命令を表すアイコンを用いたプログラミングを可能とするプログラム作成装置が提案されている(例えば、特許文献1)。
撮像装置を備えるロボットシステムにおけるプログラミングのための命令群には、撮像装置を用いて対象物を撮像し撮像された画像を画像処理して対象物を検出する機能に対応する命令が含まれる。一般には、このような撮像装置を用いた機能に対応する命令文をロボットの制御プログラム中に含める場合、撮像装置を用いた機能に対応する命令文をロボットの制御プログラム中に挿入する操作を行った後、その命令文で作動させる撮像装置の選択や設定を別途行う必要がある。ロボットシステムに配置される撮像装置は1台である場合以外に複数台である場合もある。この場合、オペレータは、撮像装置の機能に対応する命令文をプログラム中に複数挿入した後、挿入した各命令文で作動させる撮像装置の選択を繰り返す必要があり、オペレータの負担は更に増す。産業機械の制御プログラムのプログラミングにおいて、撮像装置の機能に対応する命令を含む制御プログラムの作成を行うオペレータの負担を軽減することのできるプログラミング装置が望まれている。
本開示の一態様は、産業機械のプログラミングを行うためのプログラミング装置であって、前記産業機械の制御装置に接続された撮像装置に関する情報を取得し、取得した前記情報に基づいて、前記撮像装置で取得する画像を用いる命令を表すアイコン又は命令文を生成する命令生成部と、生成された前記アイコン又は前記命令文を表示画面上に表示する命令表示部と、を備えるプログラミング装置である。
上記構成によれば、産業機械の制御プログラムのプログラミングにおいて、撮像装置の機能に対応する命令を含む制御プログラムの作成を行うオペレータの負担を軽減することができる。
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれらの目的、特徴および利点ならびに他の目的、特徴および利点がさらに明確になるであろう。
次に、本開示の実施形態について図面を参照して説明する。参照する図面において、同様の構成部分または機能部分には同様の参照符号が付けられている。理解を容易にするために、これらの図面は縮尺を適宜変更している。また、図面に示される形態は本発明を実施するための一つの例であり、本発明は図示された形態に限定されるものではない。
図1は一実施形態に係る教示装置(プログラミング装置)10を含むロボットシステム100の構成を表す図である。図1に示すように、ロボットシステム100は、アーム先端部にハンド31を搭載したロボット30と、視覚センサ41、42と、ロボット30を制御するロボット制御装置20と、ロボット制御装置20に接続された教示装置10とを含む。ロボット30は、ここでは垂直多関節ロボットであるが、他のタイプのロボットが用いられても良い。ロボット制御装置20は、制御プログラムに従って、或いは、教示装置10からの指令により、ロボット30の動作を制御する。なお、ロボット制御装置20は、CPU、ROM、RAM、記憶装置、操作部、表示部、入出力インタフェース、ネットワークインタフェース等を有する一般的なコンピュータとしての構成を有していても良い。
視覚センサ41は、ロボット30のアーム先端部に取り付けられている。視覚センサ42は、ロボット30が設置された作業空間において対象物1を撮影可能な位置に固定されている。ロボットシステム100では、視覚センサ41、42で対象物1の位置を検出し、ロボット30のハンド31で作業台2上の対象物1をハンドリングする。
視覚センサ41、42は、ロボット制御装置20に接続されており、ロボット制御装置20による制御の下で動作する。ロボット制御装置20は、視覚センサ(41、42)により撮像された画像を取得し、撮像された画像に対して対象物検出等の画像処理を行う画像処理装置としての機能も備えている。ロボット制御装置20は、対象物のモデルパターンを保持し、撮像された画像中の対象物とモデルパターンとのパターマッチングにより対象物を検出する。ロボット制御装置20は、検出された対象物1の位置により教示位置を補正して対象物1の取り出し等を実行することができる。
視覚センサ41、42は、濃淡画像やカラー画像を撮像するカメラ(2Dカメラ)でも、距離画像や3次元点群を取得できるステレオカメラや3次元センサ(3Dカメラ)でもよい。例示として、本実施形態では、視覚センサ41は2Dカメラであり、視覚センサ42は3Dカメラであるものとする。なお、図1では、ロボットシステム100に1台の2Dカメラと1台の3Dカメラの合計2台の撮像装置が配置されている例を示しているが、ロボットシステム100が具備する撮像装置の台数は1台でも良く、又は3台以上の複数の台数であっても良い。また、ロボットシステム100内に複数の同一種類の撮像装置(例えば、複数の2Dカメラ、又は、複数の3Dカメラ)が配置されていても良い。
教示装置10は、ロボット30に対象物1のハンドリングを実行させるための制御プログラムを作成するために用いられる。教示装置10は、例えば、ロボット制御装置20に接続された教示操作盤、タブレット端末等である。或いは、教示装置10は、オフラインでプログラミングを行うためのプログラミング装置(PC等)であっても良い。教示装置10は、CPU、ROM、RAM、記憶装置、入出力インタフェース、ネットワークインタフェース等を有する一般的なコンピュータとしてのハードウェア構成を有していても良い。
図2は、教示装置10の機能ブロック図である。なお、図2では、教示装置10と他の装置との接続関係も表している。図2の示すように、教示装置10は、命令生成部11と、命令表示部12と、プログラム編集部13と、プログラム生成部14とを有する。
命令生成部11は、ロボット制御装置20に接続されている1以上の撮像装置に関する情報をロボット制御装置20から取得し、当該情報に基づいて1以上の撮像装置の各々で取得する画像を用いる命令を表すアイコン又は命令文を、1以上の撮像装置の各々を識別可能な表現形式で作成する。ここで、「撮像装置に関する情報」は、ロボット制御装置20に接続されている各撮像装置の種類を特定することができる情報(例えば、製品型式)である。これにより、命令生成部11は、ロボットシステム100に具備された撮像装置の種類として、例えば、2Dカメラ(モノクロ)、2Dカメラ(カラー)、3Dカメラのいずれかであることを特定することができる。
「撮像装置に関する情報」は、更に、撮像装置の設置場所を特定可能な情報を含んでいても良い。設置場所を特定可能な情報は、例えば、撮像装置が、ロボットに搭載されているカメラ(ハンドカメラ)であるか、作業空間に固定された固定カメラであるかを表す情報である。一般にロボットに搭載するカメラの接続ケーブルは、ロボットの内部を通して配線されロボット制御装置の特定の入出力インタフェースに接続されるため、ロボット制御装置は、撮像装置がどの入出力インタフェースに接続されたものであるか(例えば、撮像装置がどのポートに接続されているかを表す情報)により、撮像装置の設置場所(ハンドカメラであるか固定カメラであるか)を特定することが可能である。なお、撮像装置の設置場所を表す情報としてさらに詳細な位置情報(例えば固定カメラの場合に作業空間内での座標情報)が提供されても良い。
或いは、ロボットの出荷時に撮像装置をロボットに取り付けて出荷するように場合には、カメラ側に当該カメラが例えばハンドカメラであることを示す情報を製品情報の一部として保有させても良い。図1の構成のロボットシステム100の場合、命令生成部11は、視覚センサ41、42に関する情報として、例えば下記のような情報をロボット制御装置20から取得する。
視覚センサ41に関する情報:2Dカメラ(カラー)、ハンドカメラ
視覚センサ42に関する情報:3Dカメラ、固定カメラ
視覚センサ41に関する情報:2Dカメラ(カラー)、ハンドカメラ
視覚センサ42に関する情報:3Dカメラ、固定カメラ
上述のような「撮像装置に関する情報」を取得することで、命令生成部11は、ロボット制御装置20に接続された撮像装置の、種類、数、及び設置場所を識別可能な表現形式で各撮像装置のアイコン又は命令文を生成することができる。命令表示部12は、命令生成部11によって作成された上記アイコン又は命令文を表示装置18の所定の表示領域に表示する。
プログラム編集部13は、ロボット30の制御プログラムを作成するための編集画面(プログラム作成画面)を表示装置18に表示させ、制御プログラムの編集操作を受け付ける。ここで、制御プログラムには、ロボット30の制御のための命令と、視覚センサによる撮像及び撮像した画像の処理に関する命令とを含む。プログラム生成部14は、編集画面中のプログラム作成領域に配置されたアイコン、又は、編集画面中のプログラム作成領域に記述された命令文から制御プログラムを生成する。
以下に、教示装置10によるアイコン又は命令文の生成及び表示に関する実施例を2例説明する。第1の実施例は、教示装置10が撮像装置で取得する画像を用いる命令を表すアイコンを生成して表示する場合の動作例であり、第2の実施例は、教示装置10が撮像装置で取得する画像を用いる命令を表す命令文(テキスト)を生成して表示する場合の動作例である。図3は、撮像装置で取得する画像を用いる命令を表すアイコン又は命令文を生成して表示するための処理(以下、命令生成及び表示処理とも記載する)を表すフローチャートである。図3のフローチャートは、第1の実施例及び第2の実施例に共通であるため、以下では、図3のフローチャートを適宜参照して2つの実施例を説明する。図3の処理は、教示装置10のCPUによる制御の下で実行される。
(第1の実施例)
第1の実施例では、教示装置10は撮像装置で取得する画像を用いる命令を表すアイコンを生成して表示する。この場合、命令生成部11はアイコン生成部として機能し、命令表示部12はアイコン表示部として機能する。教示装置10の起動により、又は、教示装置10に対してプログラム作成画面を開くための所定の操作がなされることにより、図3の命令生成及び表示処理が起動される。はじめに、教示装置10(プログラム編集部13)は、プログラム作成画面(編集画面)400を表示装置18に表示する(ステップS1)。図4及び図5は、ここで作成されるプログラム作成画面400の2つの例を示している。図4及び図5に示すように、プログラム作成画面400は、プログラム作成領域300と、アイコン表示領域200とを含む。
第1の実施例では、教示装置10は撮像装置で取得する画像を用いる命令を表すアイコンを生成して表示する。この場合、命令生成部11はアイコン生成部として機能し、命令表示部12はアイコン表示部として機能する。教示装置10の起動により、又は、教示装置10に対してプログラム作成画面を開くための所定の操作がなされることにより、図3の命令生成及び表示処理が起動される。はじめに、教示装置10(プログラム編集部13)は、プログラム作成画面(編集画面)400を表示装置18に表示する(ステップS1)。図4及び図5は、ここで作成されるプログラム作成画面400の2つの例を示している。図4及び図5に示すように、プログラム作成画面400は、プログラム作成領域300と、アイコン表示領域200とを含む。
次に教示装置10(命令生成部11)は、ロボット制御装置20に接続された撮像装置に関する情報をロボット制御装置20から取得する(ステップS2)。次に、教示装置10(命令生成部11)は、撮像装置に関する情報に基づいて撮像装置のアイコンを作成する(ステップS3)。
次に、教示装置10(命令生成部11)は、撮像装置に関する情報に基づいて、ロボット制御装置20に接続された全ての撮像装置についてアイコンが作成されたか否かを確認する(ステップS4)。教示装置10(命令生成部11)は、ロボット制御装置20に接続された全ての撮像装置についてアイコンが生成されるまで、アイコンを作成するステップS3を繰り返す(S4:NO)。ロボット制御装置20に接続された撮像装置の全てについてアイコンが作成されると(S4:YES)、処理はステップS5に進む。
ステップS5では、教示装置10(命令表示部12)は、以上の処理により作成されたアイコンを、所定の表示領域(アイコン表示領域200)に表示させる(ステップS5)。なお、本明細書においてアイコンとは、各種装置に対する命令を、図形、絵柄、記号等によりグラフィカルに表現したあらゆるものを含み得る。したがって、アイコンには、本実施形態で例示するものの他、例えば、ビジュアルなプログラミングツールで使用されるようなグラフィックなオブジェクト(例えば、パズル形式のグラフィックプログラミングで用いられるブロック)も含まれる。
図4及び図5を参照して図3の命令生成及び表示処理による撮像装置のアイコンの作成及び表示例を2例説明する。
図4は、命令生成及び表示処理による撮像装置のアイコンの作成及び表示の第1の例を示す。図4に示すように、プログラム作成画面400は、プログラミングに用いることのできるアイコンのリストを表示するアイコン表示領域200と、アイコンを動作順に配置することで制御プログラムを作成するためのプログラム作成領域300とを含む。ここでは、視覚センサ41が2Dカメラであり、視覚センサ42が3Dカメラである場合を想定する。ステップS3において、教示装置10(命令生成部11)は、視覚センサ41(2Dカメラ)のアイコンとして、2Dカメラの外観を模した図形のアイコン201を生成する。図4に示すように、アイコン201には、当該アイコンの機能を表す言葉として“2DカメラAで見て取る”との文字が付加されていても良い。また、教示装置10(命令生成部11)は、視覚センサ42(3Dカメラ)のアイコンとして、3Dカメラの外観を模した図形のアイコン202を生成する。図4に示すように、アイコン202には、当該アイコンの機能を表す言葉として“3DカメラAで見て取る”との文字が付加されていても良い。
教示装置10(命令表示部12)は、アイコン201及び202を、ロボット30の制御(制御プログラム)のためのアイコン101-104と共に、アイコン表示領域200に表示する。アイコン201及びアイコン202は、視覚センサ41(2Dカメラ)と視覚センサ42(3Dカメラ)とを識別可能に構成されているため、オペレータはアイコン表示領域200に表示されているアイコン201及び202を見ることで、使用可能な(すなわち、ロボット制御装置20に接続されている)撮像装置の種類及び数を瞬時に把握することができる。なお、プログラム作成画面400には、各アイコン101-104、201-202に付加された文字情報(“つかむ”、“はなす”等)の表示/非表示を切り替える操作を行うためのボタンが設けられていても良い。
アイコン表示領域200に表示されたアイコン101-104、201-202は、以下のような動作命令を表している。
アイコン101:ハンドを閉じて対象物をつかむ命令
アイコン102:ハンドを開く命令
アイコン103:ロボットのアーム先端部を直線の軌跡で移動させる命令
アイコン104:ロボットのアーム先端部を円弧状の軌跡で移動させる命令
アイコン201:2Dカメラで対象物の位置を検出する
アイコン202:3Dカメラで対象物の位置を検出する
アイコン101:ハンドを閉じて対象物をつかむ命令
アイコン102:ハンドを開く命令
アイコン103:ロボットのアーム先端部を直線の軌跡で移動させる命令
アイコン104:ロボットのアーム先端部を円弧状の軌跡で移動させる命令
アイコン201:2Dカメラで対象物の位置を検出する
アイコン202:3Dカメラで対象物の位置を検出する
プログラム編集部13は、オペレータによる、アイコン表示領域200に表示されたアイコンをドラッグアンドドロップによりプログラム作成領域300に配置する操作を受け付ける。プログラム生成部14は、プログラム作成領域300に配置されているアイコンに従って制御プログラムを生成する。図4のプログラム作成領域300には、動作順にアイコン103、アイコン201、アイコン101、アイコン103、アイコン104が配置されている。この制御プログラムでは、ロボット30のアーム先端を目的位置に直線移動させ、2Dカメラにより対象物の位置を検出し、当該検出した位置により教示位置を補正してハンド31により対象物を把持して移動させる動作を実行する。
図5は、命令生成及び表示処理による撮像装置のアイコンの作成及び表示の第2の例を示す。ここでは、視覚センサ41と視覚センサ42のいずれも2Dカメラである場合を想定する。この場合、教示装置10(命令生成部11)がロボット制御装置20から取得する撮像装置に関する情報は、撮像装置の種類に加え、撮像装置の設置場所に関する情報を含む。教示装置10(命令生成部11)は、ロボット制御装置20から取得した撮像装置に関する情報に基づいて、視覚センサ41がロボット30のアーム先端部に配置されたハンドカメラであること、及び、視覚センサ42が作業空間に固定された固定カメラであることを把握する。
これにより、教示装置10(命令生成部11)は、視覚センサ41のアイコンとして、視覚センサ41がロボットのアーム先端部に取り付けられたカメラであることを連想させるような図形を含むアイコン212を作成する。図5に示すように、アイコン212には、アイコン212の機能及び設置場所の理解を助けるような言葉(ここでは、“2Dハンドカメラで見て取る”)が付加されていても良い。また、教示装置10(命令生成部11)は、視覚センサ42による機能のアイコンとして、視覚センサ42が固定カメラであることを連想させるような図形のアイコン211を生成する。図5に示すように、アイコン211には、アイコン211の機能及び設置場所の理解を助けるような言葉(ここでは、“2D固定カメラで見て取る”)が付加されていても良い。
教示装置10(命令表示部12)は、アイコン211及び212を、ロボット30の制御のためのアイコン101-104と共に、アイコン表示領域200に表示する。アイコン211及びアイコン212は、視覚センサ41(ハンドカメラ)と視覚センサ42(固定カメラ)とを識別可能に構成されているため、オペレータはアイコン表示領域200に表示されているアイコン211及び212を見ることで使用可能な(すなわち、ロボット制御装置20に接続されている)撮像装置の種類、数、及び設置場所を瞬時に把握することができる。
プログラム編集部13は、オペレータによる、アイコン表示領域200に表示されたアイコンをドラッグアンドドロップによりプログラム作成領域300に配置する操作を受け付ける。プログラム生成部14は、プログラム作成領域300に配置されているアイコンに従って制御プログラムを生成する。図5のプログラム作成領域300には、動作順にアイコン103、アイコン211、アイコン101、アイコン103、アイコン104が配置されている。この制御プログラムでは、ロボット30のアーム先端を目的位置に直線移動させ、2D固定カメラにより対象物の位置を検出し、当該検出した位置により教示位置を補正してハンド31により対象物を把持して移動させる動作を実行する。
次に、命令生成部11により生成された撮像装置の機能(撮像装置で取得する画像を用いる命令)に関するアイコン(アイコン201-202、211-212)に対して詳細なプログラミングを行う場合の操作について説明する。図6は、図4や図5に例示したようなプログラム作成画面400において、オペレータがプログラム作成領域300に配置されている撮像装置の機能に関するアイコン(例えばアイコン201)を選択してプログラム作成画面400内にある詳細タブ262を押下した場合のプログラム作成画面400の例を示す。この場合、図6に示すように、プログラム作成画面400の下側の領域に、新規作成ボタン501と、ドロップダウンメニュー502が現れる。オペレータは、撮像装置の機能に関する詳細なプログラムを新規に作成する場合には、新規作成ボタン501を押下する。他方、ドロップダウンメニュー502には、教示装置10に登録されている撮像装置の機能に関するプログラムが表示される。オペレータは、このドロップダウンメニュー502から所望のプログラムを選択して開くボタン503を押下することで、選択したプログラムを開くことができる。
また、図6のプログラム作成画面400の下側の領域には、プログラム作成領域300内で選択されたアイコン(例えばアイコン201)に対応する撮像装置のライブ画像550が表示されても良い。このような構成によれば、オペレータは、プログラム作成領域300上で選択したアイコンに対応する撮像装置がどれであるかを、ライブ画像550を見ることでより確実に認識することができる。このようなライブ画像550の表示機能は、例えば、プログラム編集部13が、プログラム作成領域300内で選択されたアイコンに対する撮像装置のライブ画像の送信を、ロボット制御装置20に対して要求することで実現されても良い。
なお、図6に示したプログラム作成画面400においてプログラミングタブ261を選択すると、プログラム作成画面400の下側の領域はアイコンの一覧を表示するアイコン表示領域200に戻り、オペレータがロボットのプロググラミングを行うことができる状態に戻る。
図7は、図6の画面において新規作成ボタン501或いは開くボタン503を押下することにより表示される、撮像装置の機能に関する詳細なプログラミングのためのプログラム作成画面400Aを表す。図7に示すように、撮像装置の機能に関するプログラム作成画面400Aも、ロボットの制御プログラムを作成する場合のプログラム作成画面400と同じ画面構成となっている。プログラム作成画面400Aは、撮像装置の制御に関するアイコンを表示するアイコン表示領域200Aと、撮像装置に関する機能の詳細なプログラムを作成するためのプログラム作成領域300Aとを含む。ロボットの制御プログラムを編集する場合と同様に、オペレータは、アイコン表示領域200Aからアイコンを選択してドラッグアンドドロップ操作でプログラム作成領域300Aに並べることで、撮像装置の機能に関する詳細なプログラムを作成することができる。
図7の例では、アイコン表示領域200Aに表示されるアイコンは、撮像に関する機能を表す撮像アイコン252と、対象物の検出機能を表す検出アイコン253と、補正量の計算を表す補正計算アイコン254とを含む。オペレータは、プログラム作成領域300Aに配置した各アイコンを選択して所定の操作を行い、プログラム作成画面400Aの下部にパラメータ設定画面を表示させて詳細なパラメータの設定を行うことができる。撮像アイコン252のパラメータ設定では以下のような設定項目について設定を行う。
・露光時間
・LED照明の点灯の有無
・画像縮小率
・露光時間
・LED照明の点灯の有無
・画像縮小率
検出アイコン253のパラメータ設定では以下のような設定項目の設定を行う。なお、下記設定項目において「一致度の閾値」、「コントラストの閾値」は、対象物の検出の画像処理における閾値に関するパラメータである。
・使用する画像
・見つける形状
・一致度の閾値
・コントラストの閾値
・使用する画像
・見つける形状
・一致度の閾値
・コントラストの閾値
補正計算アイコン254では、例えば検出アイコン253の検出結果に基づき対象物の画像上での位置を求め、当該画像上の位置をロボット座標系の3次元座標に変換することで、ロボットの教示位置を補正するための補正量を得る。
図7のプログラム作成領域300Aのプログラム(以下、ビジョンプログラム604と記す)では、初めに撮像アイコン252が配置され、次に検出動作に相当する補助アイコン257が配置され、その補助アイコン257の枠内に2つの検出アイコン253が配置されている。このビジョンプログラム604では、次のような動作を実現する。初めに撮像アイコン252により対象物を撮像する。次に、検出の補助アイコン257では対象物の全体の形状を検出し、補助アイコン257内の2つの検出アイコン253により対象物上の特徴(例えば穴)の検出を行う。これにより、穴を2つ有する対象物を検出することができる。次に補正計算アイコン254で対象物のロボット座標系における座標を求め位置補正用のデータとする。
(第2の実施例)
次に、教示装置10によるアイコン又は命令文の生成及び表示に関する第2の実施例を説明する。第2の実施例は、教示装置10が撮像装置で取得する画像を用いる命令を表す命令文(テキスト)を生成して表示する。図9に本実施形態による教示装置10により生成されるテキストベースでのプログラム作成画面400Bの例を示し、比較例として、図8に一般的な教示装置におけるテキストベースでのプログラム作成画面140の例を示す。図8及び図9のいずれも、図1のような2つの撮像装置を備えるロボットシステムにおいて同一の動作を実行するためのプログラム作成画面を示している。
次に、教示装置10によるアイコン又は命令文の生成及び表示に関する第2の実施例を説明する。第2の実施例は、教示装置10が撮像装置で取得する画像を用いる命令を表す命令文(テキスト)を生成して表示する。図9に本実施形態による教示装置10により生成されるテキストベースでのプログラム作成画面400Bの例を示し、比較例として、図8に一般的な教示装置におけるテキストベースでのプログラム作成画面140の例を示す。図8及び図9のいずれも、図1のような2つの撮像装置を備えるロボットシステムにおいて同一の動作を実行するためのプログラム作成画面を示している。
図9は、本実施形態に係る教示装置10のプログラム編集部13によって表示されるプログラム作成画面400Bを示す。プログラム作成画面400Bは、テキストベースでのプログラミングを行うためのプログラム作成領域300Bを含む。プログラム作成画面400Bが表示された状態で教示装置10の入力装置19を介して所定の操作(例えば、プログラム作成画面400Bに表示された命令リストボタン(不図示)を押下する操作)を行うことで、命令文の一覧を表示するポップアップメニュー200Bを表示させることができる。オペレータは、プログラム作成領域300B上の所望の行番号の位置にカーソルを移動させてポップアップメニュー200Bから所望の命令文を選択することで、カーソルの位置に命令文を挿入することができる。
図3のフローチャートに沿って、教示装置10による命令文の作成及び表示処理を説明する。はじめに、教示装置10の起動により、或いは、教示装置10においてプログラム作成画面を開くための所定の操作が行われることにより、図3の処理が起動される。はじめに、教示装置10(プログラム編集部13)は、プログラム作成画面400Bを開く(ステップS1)。次に、命令生成部11は、ロボット制御装置20に接続された撮像装置に関する情報をロボット制御装置20から取得する(ステップS2)。ここでは、2台の視覚センサの情報が得られる。2台のカメラを便宜上、カメラA、カメラBとする。命令生成部11は、2台のカメラA、カメラBの各々について命令文を作成する。命令生成部11は、例えば、撮像装置による撮像を指示する命令である命令文“ビジョンケンシュツ”に関して、カメラA,カメラB各々に対して指令するための命令文“カメラAビジョンケンシュツ”、“カメラBビジョンケンシュツ”を生成する(ステップS3)。また、命令生成部11は、撮像された画像から対象物の位置を検出するための命令である命令文“ビジョンホセイデータシュトク”に関して、カメラA、カメラB各々に対して指令するための命令文“カメラAビジョンホセイデータシュトク”、“カメラBビジョンホセイデータシュトク”を生成する(ステップS3、S4)。
次に、命令表示部12は、例えば命令リストボタン(不図示)に対する選択操作に応じてロボットの制御に関する命令文と共に、命令生成部11により生成された撮像装置の機能に関する命令文である“カメラAビジョンケンシュツ”、“カメラBビジョンケンシュツ”、“カメラAビジョンホセイデータシュトク”、“カメラBビジョンホセイデータシュトク”をポップアップメニュー200Bに含めて表示する(ステップS5)。オペレータは、このようなポップアップメニュー200B(命令文の一覧)を見ることで、ロボットシステムに接続されている撮像装置の種類、数を瞬時に把握することができる。なお、図9では2台のカメラを“カメラA”、“カメラB”と表記する場合を示しているが、例えば、“カメラA”の部分を“2Dハンドカメラ”と表記し、“カメラB”の部分を“3Dコテイカメラ”と表記することで、命令文として“2Dハンドカメラビジョンケンシュツ”、“3Dコテイカメラビジョンケンシュツ”、“2Dハンドカメラビジョンホセイデータシュトク”、“3Dコテイカメラビジョンホセイデータシュトク”をポップアップメニュー200Bに含めるようにしても良い。この場合、オペレータは、ロボットシステム100に取り付けられた撮像装置の種類、数、及び設置場所を把握することができる。
ポップアップメニュー200Bに表示された命令文のリストから所望の命令文を選択してカーソルのある行に挿入する編集操作を繰り返すことで、オペレータは、プログラム作成領域300Bに記述されているような制御プログラムを作成する。ここでは、カメラAを直接指定する形での命令文(3-4行目)により、カメラAによる対象物の位置検出がなされ、検出された位置に基づきロボットの位置補正を行いながら対象物を把持する動作が実現される(6-10行)。また、カメラBを直接指定する形での命令文(13-14行目)により、カメラBによる対象物の位置検出がなされ、検出された位置に基づきロボットの位置補正を行いながら対象物を把持する動作が実現される(16-20行)。
他方、一般的な教示装置では、撮像装置毎に命令文を作成する処理はなされない。そのため、図8に示すように、一般的な教示装置によるプログラム作成画面140においては、命令文の一覧を表示するポップアップメニュー120には、撮像装置に関する命令文として、撮像装置を特定しない形式での命令文“ビジョンケンシュツ”、“ビジョンホセイデータシュトク”が表示されるに留まる。この場合、オペレータは、例えば、命令文“ビジョンケンシュツ”をポップアップメニュー120から選択してプログラム作成領域130に挿入した後に、この命令文“ビジョンケンシュツ”で用いるカメラをパラメータとして選択する必要がある。このようなポップアップメニュー120では、オペレータは、ロボットシステムに取り付けられている撮像装置の種類、数、設置場所を把握することはできない。
上述の実施形態では、複数の撮像装置がロボットシステムに配置されている場合について説明したが、ロボットシステムに配置される撮像装置が1台の場合であっても、第1実施例(図4、図5)の場合にはアイコン表示領域200に撮像装置が選択された状態のアイコンが表示され、第2の実施例(図9)の場合にはポップアップメニュー200Bには撮像装置が選択された状態の命令文が表示される。例えば、第1の実施例の場合、ロボットシステムに配置される撮像装置が1台(視覚センサ41)であれば、アイコン表示領域200にはアイコン201が表示される。また、第2の実施例の場合、ロボットシステムに配置される撮像装置が1台(カメラA)であれば、ポップアップメニュー200Bには“カメラAビジョンケンシュツ”、“カメラAビジョンホセイデータシュトク”が表示されることになる。したがって、ロボットシステムに配置される撮像装置が1台の場合であっても、オペレータは、アイコン又は命令文に対する詳細な設定としてカメラを選択する操作を行う必要はない。
したがって、本実施形態によれば、産業機械の制御プログラムのプログラミングにおいて、撮像装置の機能に対応する命令を含む制御プログラムの作成を行うオペレータの負担を軽減することができる。
以上、典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、上述の各実施形態に変更及び種々の他の変更、省略、追加を行うことができるのを理解できるであろう。
上述の実施形態はロボットシステムにおける制御プログラムの作成に関するものであったが、上述の実施形態は、工作機械その他の各種産業機械の制御装置に1台以上の撮像装置が接続されたシステムにおける、制御プログラムのプログラミング装置に適用することができる。
図2に示した教示装置10の機能ブロックは、教示装置10のCPUが、記憶装置に格納された各種ソフトウェアを実行することで実現されても良く、或いは、ASIC(Application Specific Integrated Circuit)等のハードウェアを主体とした構成により実現されても良い。
図2に示した機能ブロック図の機能配置は例示であり、教示装置10に配置されている機能の一部がロボット制御装置20側に配置されても良い。
教示装置10(命令生成部11)がロボット制御装置20から撮像装置に関する情報を取得してアイコン又は命令文の生成を行うタイミングは、上述した実施形態に記載の例以外にも、撮像装置がロボット制御装置20に接続されたタイミングなど様々な例が有り得る。教示装置10(命令生成部11)がロボット制御装置20から撮像装置に関する情報を取得してアイコン又は命令文の生成を行うタイミングは、教示装置10の起動時、撮像装置のロボット制御装置20への接続時、プログラム作成画面400が開かれた時等の所定の起動タイミングのいずれかとしても良く、或いは、これら起動タイミングの複数のタイミングとしても良い。
上述した実施形態における図3の命令生成及び表示処理を実行するプログラムは、コンピュータに読み取り可能な各種記録媒体(例えば、ROM、EEPROM、フラッシュメモリ等の半導体メモリ、磁気記録媒体、CD-ROM、DVD-ROM等の光ディスク)に記録することができる。
1 対象物
2 作業台
10 教示装置
11 命令生成部
12 命令表示部
13 プログラム編集部
14 プログラム生成部
18 表示装置
19 入力装置
20 ロボット制御装置
30 ロボット
41、42 視覚センサ
31 ハンド
200 アイコン表示領域
200B ポップアップメニュー
300、300B プログラム作成領域
400、400B プログラム作成画面
2 作業台
10 教示装置
11 命令生成部
12 命令表示部
13 プログラム編集部
14 プログラム生成部
18 表示装置
19 入力装置
20 ロボット制御装置
30 ロボット
41、42 視覚センサ
31 ハンド
200 アイコン表示領域
200B ポップアップメニュー
300、300B プログラム作成領域
400、400B プログラム作成画面
Claims (8)
- 産業機械のプログラミングを行うためのプログラミング装置であって、
前記産業機械の制御装置に接続された撮像装置に関する情報を取得し、取得した前記情報に基づいて、前記撮像装置で取得する画像を用いる命令を表すアイコン又は命令文を生成する命令生成部と、
生成された前記アイコン又は前記命令文を表示画面上に表示する命令表示部と、
を備えるプログラミング装置。 - 前記命令生成部は、前記プログラミング装置の起動時、前記撮像装置の前記制御装置への接続時およびプログラム作成画面が開かれた時を含む所定の起動タイミングのいずれかあるいは複数のタイミングにおいて、前記プログラミング装置に接続された前記制御装置から前記撮像装置に関する情報を取得する、請求項1に記載のプログラミング装置。
- 前記命令生成部は、前記プログラミング装置の入力装置を介してプログラム作成画面を起動するための所定の操作がなされたことに応じて、前記プログラミング装置に接続された前記制御装置から前記撮像装置に関する情報を取得する、請求項1に記載のプログラミング装置。
- 前記撮像装置に関する情報は、前記撮像装置の種類、設置場所または接続されたポートの情報のいずれかまたは複数に関する情報を含む、請求項1から3のいずれか一項に記載のプログラミング装置。
- 前記撮像装置に関する情報は、前記制御装置に接続された複数の前記撮像装置に関するものであり、
前記命令生成部は、複数の前記撮像装置の各々で取得する画像を用いる命令を表す前記アイコン又は前記命令文を、複数の前記撮像装置の各々を識別可能な表現形式で生成する、請求項4に記載のプログラミング装置。 - 前記撮像装置に関する情報は、複数の前記撮像装置の各々の種類に関する情報を含み、
前記命令生成部は、複数の前記撮像装置の各々で取得する画像を用いる命令を表す前記アイコン又は前記命令文を、複数の前記撮像装置の各々の種類を識別可能な表現形式で生成する、請求項5に記載のプログラミング装置。 - 前記撮像装置に関する情報は、複数の前記撮像装置の各々の設置場所に関する情報を含み、
前記命令生成部は、複数の前記撮像装置の各々で取得する画像を用いる命令を表す前記アイコン又は前記命令文を、複数の前記撮像装置の各々の設置場所を識別可能な表現形式で生成する、請求項5又は6に記載のプログラミング装置。 - 前記プログラミングを行うためのプログラム作成画面を表示し、該プログラム作成画面に対する編集操作を受け付けるプログラム編集部を更に備え、
前記命令生成部は、前記撮像装置で取得する画像を用いる命令を表す前記アイコンを生成し、
前記命令表示部は、生成された前記アイコンを前記プログラム作成画面内の所定の表示領域に表示し、
前記プログラム作成画面は、前記所定の表示領域から選択したアイコンを配置することでプログラムを作成するためのプログラム作成領域を含み、
前記プログラム編集部は、前記プログラム作成領域に配置された前記アイコンに対する選択操作に応じて、該選択されたアイコンに対応する撮像装置のライブ画像を表示する、請求項1から7のいずれか一項に記載のプログラミング装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE112021003127.9T DE112021003127T5 (de) | 2020-06-05 | 2021-06-01 | Programmiervorrichtung |
JP2022528851A JP7553559B2 (ja) | 2020-06-05 | 2021-06-01 | プログラミング装置 |
US17/928,998 US20230219223A1 (en) | 2020-06-05 | 2021-06-01 | Programming device |
CN202180040629.7A CN115803155A (zh) | 2020-06-05 | 2021-06-01 | 编程装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020098761 | 2020-06-05 | ||
JP2020-098761 | 2020-06-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021246416A1 true WO2021246416A1 (ja) | 2021-12-09 |
Family
ID=78831173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/020897 WO2021246416A1 (ja) | 2020-06-05 | 2021-06-01 | プログラミング装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230219223A1 (ja) |
JP (1) | JP7553559B2 (ja) |
CN (1) | CN115803155A (ja) |
DE (1) | DE112021003127T5 (ja) |
WO (1) | WO2021246416A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023112342A1 (ja) * | 2021-12-17 | 2023-06-22 | ファナック株式会社 | 教示装置、制御装置、及び機械システム |
EP4250038A1 (en) * | 2022-03-24 | 2023-09-27 | Espec Corp. | Setting device, program, environment forming device, and setting method |
WO2023223395A1 (ja) * | 2022-05-16 | 2023-11-23 | ファナック株式会社 | 画像処理装置、ビジョンシステムおよび画像処理プログラム |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249026A (ja) * | 1995-03-10 | 1996-09-27 | Fanuc Ltd | ロボットを含むシステムのプログラミング方法 |
JPH10315172A (ja) * | 1997-05-12 | 1998-12-02 | Kawasaki Heavy Ind Ltd | ロボット制御装置 |
JP2006510496A (ja) * | 2002-12-19 | 2006-03-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ロボットを制御するためのシステム及び方法 |
JP6498366B1 (ja) * | 2018-07-10 | 2019-04-10 | 三菱電機株式会社 | 教示装置 |
JP2020075354A (ja) * | 2018-11-01 | 2020-05-21 | キヤノン株式会社 | 外部入力装置、ロボットシステム、ロボットシステムの制御方法、制御プログラム、及び記録媒体 |
CN111273572A (zh) * | 2018-12-04 | 2020-06-12 | 北京猎户星空科技有限公司 | 一种动作分子模板的创建方法及装置、设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4347386B2 (ja) * | 2008-01-23 | 2009-10-21 | ファナック株式会社 | 加工用ロボットプラグラムの作成装置 |
JP6149400B2 (ja) * | 2012-12-28 | 2017-06-21 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報処理システム、その制御方法及びプログラム |
JP7139735B2 (ja) * | 2018-07-09 | 2022-09-21 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
-
2021
- 2021-06-01 DE DE112021003127.9T patent/DE112021003127T5/de active Pending
- 2021-06-01 JP JP2022528851A patent/JP7553559B2/ja active Active
- 2021-06-01 WO PCT/JP2021/020897 patent/WO2021246416A1/ja active Application Filing
- 2021-06-01 CN CN202180040629.7A patent/CN115803155A/zh active Pending
- 2021-06-01 US US17/928,998 patent/US20230219223A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249026A (ja) * | 1995-03-10 | 1996-09-27 | Fanuc Ltd | ロボットを含むシステムのプログラミング方法 |
JPH10315172A (ja) * | 1997-05-12 | 1998-12-02 | Kawasaki Heavy Ind Ltd | ロボット制御装置 |
JP2006510496A (ja) * | 2002-12-19 | 2006-03-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ロボットを制御するためのシステム及び方法 |
JP6498366B1 (ja) * | 2018-07-10 | 2019-04-10 | 三菱電機株式会社 | 教示装置 |
JP2020075354A (ja) * | 2018-11-01 | 2020-05-21 | キヤノン株式会社 | 外部入力装置、ロボットシステム、ロボットシステムの制御方法、制御プログラム、及び記録媒体 |
CN111273572A (zh) * | 2018-12-04 | 2020-06-12 | 北京猎户星空科技有限公司 | 一种动作分子模板的创建方法及装置、设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023112342A1 (ja) * | 2021-12-17 | 2023-06-22 | ファナック株式会社 | 教示装置、制御装置、及び機械システム |
EP4250038A1 (en) * | 2022-03-24 | 2023-09-27 | Espec Corp. | Setting device, program, environment forming device, and setting method |
WO2023223395A1 (ja) * | 2022-05-16 | 2023-11-23 | ファナック株式会社 | 画像処理装置、ビジョンシステムおよび画像処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP7553559B2 (ja) | 2024-09-18 |
JPWO2021246416A1 (ja) | 2021-12-09 |
DE112021003127T5 (de) | 2023-03-23 |
US20230219223A1 (en) | 2023-07-13 |
CN115803155A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021246416A1 (ja) | プログラミング装置 | |
JP6361213B2 (ja) | ロボット制御装置、ロボット、ロボットシステム、教示方法、及びプログラム | |
JP6343353B2 (ja) | ロボットの動作プログラム生成方法及びロボットの動作プログラム生成装置 | |
JP2019188530A (ja) | ロボットのシミュレーション装置 | |
KR20160002329A (ko) | 로봇 시뮬레이터 및 로봇 시뮬레이터의 파일 생성 방법 | |
JP2013094961A (ja) | 3次元表示部を備えたロボット教示装置 | |
US20170197308A1 (en) | Teaching data generating device and teaching data-generating method for work robot | |
JP2018167334A (ja) | 教示装置および教示方法 | |
JP2018144228A (ja) | ロボット制御装置、ロボット、ロボットシステム、教示方法、及びプログラム | |
JP2019171498A (ja) | ロボットプログラム実行装置、ロボットプログラム実行方法、プログラム | |
CN115338855A (zh) | 双臂机器人组装系统 | |
WO2021215333A1 (ja) | プログラム編集装置 | |
JP7553612B2 (ja) | 教示装置 | |
KR20210072463A (ko) | 인간-머신 상호작용 방법 및 이를 위한 장치 | |
JP2007052388A (ja) | 画像表示システム | |
KR20230134328A (ko) | 로봇 교시를 위한 장치 및 방법 | |
JP7533235B2 (ja) | コンピュータープログラム、ロボットの制御プログラムを作成する方法、及び、ロボットの制御プログラムを作成する処理を実行するシステム | |
WO2023053368A1 (ja) | 教示装置及びロボットシステム | |
US20240256229A1 (en) | Program creation device | |
WO2024028977A1 (ja) | 教示装置 | |
WO2023026490A1 (ja) | 教示装置 | |
WO2023162164A1 (ja) | 教示支援装置、作業システム、教示支援方法および教示支援プログラム | |
JP2022097929A (ja) | プログラム作成支援方法、プログラム作成支援装置、プログラム作成支援プログラム及び記憶媒体 | |
TW202247960A (zh) | 教示裝置 | |
JP2015080842A (ja) | 教示出力装置、ロボット、ロボットシステム、教示出力方法、プログラム、及びレイアウトシート |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21818877 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022528851 Country of ref document: JP Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21818877 Country of ref document: EP Kind code of ref document: A1 |