WO2022107760A1 - 数値制御装置、及び記憶媒体 - Google Patents

数値制御装置、及び記憶媒体 Download PDF

Info

Publication number
WO2022107760A1
WO2022107760A1 PCT/JP2021/042067 JP2021042067W WO2022107760A1 WO 2022107760 A1 WO2022107760 A1 WO 2022107760A1 JP 2021042067 W JP2021042067 W JP 2021042067W WO 2022107760 A1 WO2022107760 A1 WO 2022107760A1
Authority
WO
WIPO (PCT)
Prior art keywords
aerial vehicle
unmanned aerial
control device
movement command
numerical control
Prior art date
Application number
PCT/JP2021/042067
Other languages
English (en)
French (fr)
Inventor
高史 三好
Original Assignee
ファナック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ファナック株式会社 filed Critical ファナック株式会社
Priority to DE112021004890.2T priority Critical patent/DE112021004890T5/de
Priority to US18/034,948 priority patent/US20230400866A1/en
Priority to CN202180076140.5A priority patent/CN116529160A/zh
Priority to JP2022563766A priority patent/JP7509914B2/ja
Publication of WO2022107760A1 publication Critical patent/WO2022107760A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0016Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the operator's input device
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C13/00Control systems or transmitting systems for actuating flying-control surfaces, lift-increasing flaps, air brakes, or spoilers
    • B64C13/02Initiating means
    • B64C13/16Initiating means actuated automatically, e.g. responsive to gust detectors
    • B64C13/20Initiating means actuated automatically, e.g. responsive to gust detectors using radiated signals
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • B64U10/13Flying platforms
    • B64U10/14Flying platforms with four distinct rotor axes, e.g. quadcopters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0044Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2101/00UAVs specially adapted for particular uses or applications
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2101/00UAVs specially adapted for particular uses or applications
    • B64U2101/25UAVs specially adapted for particular uses or applications for manufacturing or servicing
    • B64U2101/26UAVs specially adapted for particular uses or applications for manufacturing or servicing for manufacturing, inspections or repairs
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/20Remote controls

Definitions

  • the present invention relates to a numerical control device for controlling a machine tool and a storage medium readable by a computer.
  • Patent Document 1 describes a robot, a robot control device that controls the robot, a teaching device that sends a teaching signal of the robot to the robot control device 50 in response to an operator's teaching input, and an unmanned airplane provided with an image pickup device.
  • a robot system including a flight control unit that controls the flight of an unmanned airplane so that the image pickup device continuously acquires an image of an object necessary for teaching based on the teaching signal while the robot operates according to the signal. It has been disclosed.
  • robots may be used inside fences for safety reasons.
  • Patent Document 1 by controlling the flight of an unmanned aerial vehicle based on a teaching signal that controls the robot while the robot is operating, even in an environment where it is difficult for the operator to directly see the movement of the robot from outside the fence. Can teach robots.
  • Unmanned aerial vehicles are used for warehouse inventory management and factory condition monitoring.
  • Unmanned aerial vehicles are flying objects and have flexible moving areas, so they are expected to be used in new ways.
  • the numerical control device is a numerical control device that controls a machine tool, and is a movement command acquisition unit that acquires a movement command of an unmanned airplane in a coordinate system set in the numerical control device, and a movement. It includes a coordinate system conversion unit that converts the coordinate system of the command into a coordinate system for controlling an unmanned airplane, and a movement command output unit that outputs a movement command converted by the coordinate system conversion unit to the unmanned aircraft.
  • the storage medium acquires a movement command of an unmanned airplane in a coordinate system set in a numerical control device by being executed by one or a plurality of processors, and the coordinate system of the movement command is unmanned. It is a storage medium that stores computer-readable commands that are converted into a coordinate system for controlling an airplane and output to the unmanned airplane a movement command converted into a coordinate system for controlling an unmanned airplane.
  • an unmanned aerial vehicle can be utilized at a manufacturing site.
  • FIG. 1 is a conceptual diagram of an unmanned aerial vehicle control system 100.
  • the unmanned aerial vehicle control system 100 outputs a movement command to the personal computer (PC) 1 that calculates the self-position of the unmanned aerial vehicle on the three-dimensional map of the factory, one or more unmanned aerial vehicles 2, and the unmanned aerial vehicle 2. It includes a control device 3, a pendant 4 that receives a user's movement command, and a wireless communication device 5 that mediates communication between the unmanned aerial vehicle 2 and the PC 1.
  • the unmanned aerial vehicle control system 100 is provided in the factory building including the numerical control device 3.
  • the unmanned aerial vehicle 2 moves in the factory and performs work according to the control information from the numerical control device 3.
  • the unmanned aerial vehicle 2 has the hardware configuration shown in FIG.
  • the CPU 211 included in the unmanned aerial vehicle 2 is a processor that controls the unmanned aerial vehicle 2 as a whole.
  • the CPU 211 reads the system program stored in the ROM 212 via the bus, and controls the entire unmanned aerial vehicle 2 according to the system program.
  • the RAM 213 temporarily stores temporary calculation data, various data input from the outside, and the like.
  • the non-volatile memory 214 is composed of, for example, a memory backed up by a battery (not shown), and the storage state is maintained even when the power supply 221 of the unmanned aerial vehicle 2 is turned off.
  • the non-volatile memory 214 stores data read from an external device (not shown), data acquired from a communication device via a network, and the like.
  • the data stored in the non-volatile memory 214 may be expanded in the RAM 213 at the time of execution / use of the unmanned aerial vehicle 2. Further, various system programs such as known programs are written in advance in the ROM 212.
  • the sensor 215 is an acceleration sensor, an angular velocity sensor, an electronic compass, a barometric pressure sensor, a distance sensor, or the like.
  • the electronic compass obtains the direction of the unmanned aerial vehicle by magnetic force.
  • the distance sensor is, for example, a LIDAR (Light Detection and Ringing) sensor, and measures scattered light with respect to laser irradiation that emits in a pulse shape.
  • the CPU 211 mounted on the unmanned aerial vehicle 2 functions as, for example, a flight controller or a companion controller.
  • the number of CPUs 211 is not necessarily one, and a plurality of CPUs 211 may be mounted according to the function.
  • the CPU 211 as a flight controller controls the attitude of the aircraft to an appropriate position based on the information acquired from the sensor 215.
  • the CPU 211 calculates the inclination and movement of the unmanned airplane 2 based on the amount of change in the speed of the unmanned airplane 2 acquired by the acceleration sensor, and the CPU 211 calculates the inclination and movement of the unmanned airplane 2 based on the amount of change in the rotational speed of the unmanned airplane 2 acquired from the angular velocity sensor.
  • the altitude of the unmanned airplane 2 is calculated from the pressure of the air acquired from the barometric pressure sensor by calculating the change of the inclination and the direction of.
  • the CPU 211 as a companion controller also calculates two-dimensional or three-dimensional point group data based on the value of scattered light acquired by the LIDAR sensor.
  • the point cloud data is an environmental map around the unmanned aerial vehicle 2.
  • the CPU 211 can also sequentially estimate the amount of movement of the unmanned aerial vehicle 2 by matching the point clouds with each other.
  • the self-position can be estimated by integrating the amount of movement. Further, in order to use the LIDAR sensor for estimating the self-position of the unmanned aerial vehicle 2, the values acquired from the acceleration sensor and the angular velocity sensor may be combined.
  • the image processing unit 216 converts the image captured by the camera 217 into appropriate data and outputs it to the CPU 211.
  • the camera 217 of the unmanned aerial vehicle 2 mainly captures the mechanical equipment selected by the user. As a result, the state of the factory can grasp the value of the instrument and the operating state of the mechanical equipment.
  • the wireless communication unit 218 transmits / receives data to / from the PC 1 via the wireless communication device 5.
  • the PC 1 transmits a command to the unmanned aerial vehicle 2.
  • the directive includes a flight plan for unmanned aerial vehicle 2.
  • the unmanned aerial vehicle 2 carries out the work according to the flight plan from the numerical control device 3.
  • the ESC (Electric Speed Controller) 219 also known as an amplifier, is attached to each propeller.
  • the ESC219 controls the rotation speed of the motor according to the instruction from the CPU 211.
  • a pressure difference is generated above and below the propeller 220, and lift is generated by this pressure difference, and the unmanned airplane 2 flies.
  • Lift is a force that works upward to push up the unmanned aerial vehicle 2.
  • the unmanned aerial vehicle 2 can change the speed and the moving direction by changing the rotation speed of the propeller 220.
  • the unmanned airplane 2 has hovering (lift and gravity become equal), ascending (the rotation speed of the four motors increases), and descending (the rotation speed of the four motors decreases).
  • the numerical control device 3 has the hardware configuration shown in FIG.
  • the CPU 111 included in the numerical control device 3 is a processor that controls the numerical control device 3 as a whole.
  • the CPU 111 reads out the system program stored in the ROM 112 via the bus 122, and controls the entire numerical control device 3 according to the system program. Temporary calculation data, display data, various data input from the outside, and the like are temporarily stored in the RAM 113.
  • the hardware configuration of PC1 is the same as that in FIG.
  • the non-volatile memory 114 is composed of, for example, a memory backed up by a battery (not shown), an SSD (Solid State Drive), or the like, and the storage state is maintained even when the power of the numerical control device 3 is turned off.
  • the non-volatile memory 114 stores data read from the external device 125 via the interface 115, data input via the input unit 124, data acquired from an unmanned airplane via a wireless communication device, and the like. ..
  • the data stored in the non-volatile memory 114 may be expanded in the RAM 113 at the time of execution / use. Further, various system programs such as known programs are written in advance in the ROM 112.
  • each data read on the memory, data obtained as a result of executing the program, etc. are output and displayed via the interface 117.
  • the input unit 124 composed of a keyboard, a pointing device, or the like passes the programmer's input to the CPU 111 via the interface 118.
  • FIG. 4 is a block diagram of the unmanned aerial vehicle control system 100 of the first disclosure.
  • the PC 1 has a self-position acquisition unit 11 that acquires the self-position of the unmanned airplane 2, an environment map acquisition unit 12 that acquires an environment map around the unmanned aircraft 2, a three-dimensional map storage unit 13 that stores a three-dimensional map of the factory, and the like. It includes a mapping unit 14 that maps an environmental map to a three-dimensional map, a flight plan creation unit 15 that creates a flight plan for an unmanned aircraft, and a flight plan output unit 16 that outputs a flight plan to an unmanned aircraft 2.
  • the self-position acquisition unit 11 acquires the self-position from the unmanned aerial vehicle 2
  • the environmental map acquisition unit 12 acquires the environmental map from the unmanned aerial vehicle 2.
  • the mapping unit 14 associates the environmental map of the unmanned airplane 2 with the three-dimensional map based on the feature points and the like, and maps the self-position of the unmanned airplane 2 to the coordinate system of the three-dimensional map.
  • the flight plan creation unit 15 creates a flight plan for the unmanned aerial vehicle 2. The flight plan is created based on the coordinate system of the three-dimensional map stored in the PC1. The coordinate system of the three-dimensional map is a coordinate system for controlling the unmanned aerial vehicle 2.
  • the flight plan output unit 16 outputs the flight plan to the wireless communication device 5. The flight plan is transmitted to the unmanned aerial vehicle 2 via the wireless communication device 5.
  • the unmanned airplane 2 has a self-position estimation unit 21 that estimates its own position, an environment map creation unit 22 that creates an environmental map around the unmanned airplane 2, a flight plan reception unit 23 that receives the flight plan of the unmanned airplane 2, and a pendant 4. It is provided with a movement command receiving unit 24 that receives a movement command manually input from the above, and an autonomous flight unit 25 that performs autonomous flight according to a flight plan or a movement command.
  • the self-position estimation unit 21 calculates the inclination and movement of the unmanned aerial vehicle 2 based on the amount of change in the speed of the unmanned aerial vehicle 2 acquired by the acceleration sensor, and based on the amount of change in the rotational speed of the unmanned aerial vehicle 2 acquired from the angular velocity sensor.
  • the change in the inclination and direction of the unmanned aerial vehicle 2 is calculated, the altitude of the unmanned aerial vehicle 2 is calculated from the pressure of the air acquired from the barometric pressure sensor, and the amount of movement of the unmanned aerial vehicle 2 is calculated. Further, the self-position estimation unit 21 sequentially estimates the amount of movement of the unmanned aerial vehicle 2 by matching the environmental map. The self-position is estimated by integrating the amount of movement.
  • the environmental map creation unit 22 also calculates two-dimensional or three-dimensional point group data based on the value of the scattered light acquired by the LIDAR sensor.
  • the point cloud data is an environmental map around the unmanned aerial vehicle 2.
  • the flight plan receiving unit 23 receives the flight plan from the PC 1 via the wireless communication device 5.
  • the movement command receiving unit 24 receives the movement command from the numerical control device 3.
  • the autonomous flight unit 25 performs autonomous flight in accordance with this movement command. Specifically, it estimates its own position based on its own movement amount and posture calculated from various sensors such as an acceleration sensor, an angular velocity sensor, and a barometric pressure sensor, and flies to the destination according to a flight plan and a movement command.
  • the numerical control device 3 has a movement command acquisition unit 31 that acquires a movement command such as a movement amount or coordinates input from the pendant 4, a three-dimensional position acquisition unit 32 that acquires a self-position on a three-dimensional map of the unmanned airplane 2.
  • Coordinate system conversion unit 33 that converts the coordinate system of the movement command to the coordinate system (three-dimensional map) of the unmanned airplane 2, and the movement command output unit 34 that outputs the movement command converted to the coordinate system of the three-dimensional map to the unmanned airplane 2.
  • the pendant 4 is equipped with a manual pulse generator and a plurality of buttons, and outputs a movement command input unit 41 for inputting a movement command such as the movement amount and coordinates of the unmanned aerial vehicle 2 and a movement command input by the user to the numerical control device 3.
  • a movement command output unit 42 is provided.
  • FIG. 5 shows an example of the pendant 4.
  • the pendant 4 of FIG. 5 is provided with a button 43 for selecting the X-axis, Y-axis, and Z-axis coordinate axes, a button 44 for converting an input magnification, and a dial 45 for inputting a movement amount.
  • the axis and rotating the dial 45 By selecting the axis and rotating the dial 45, the movement direction and movement amount of the unmanned aerial vehicle can be input.
  • the axis may be selected, the dial 45 may be rotated, and the coordinates of the destination of the unmanned aerial vehicle 2 may be input.
  • the value input by the pendant 4 is a value of the coordinate system set by the numerical control device 3 to control the machine tool (not shown).
  • the coordinate system used in the numerical control device 3 is mainly a Cartesian coordinate system of three axes of X-axis, Y-axis, and Z-axis. There is also equipment that can control 4 axes including the rotation axis and 5 axes including the tilt axis.
  • the directions of the X-axis, Y-axis, and Z-axis differ depending on the type of equipment. In a milling machine or a three-dimensional machining center, the X-axis is horizontal and the right is +, the Y-axis is the front-back direction and the back is +, and the Z-axis is the vertical direction and the top is +.
  • the coordinate system used in the numerical control device 3 includes a "machine coordinate system", a "work coordinate system”, a "local coordinate system", and the like, depending on the position of the origin.
  • FIG. 6 is a flowchart showing the operation of the unmanned aerial vehicle control system 100 of the first disclosure.
  • the unmanned aerial vehicle 2 estimates its own position (step S1) and creates an environmental map (step S2).
  • the PC 1 maps the self-position of the unmanned airplane 2 and the environmental map to the three-dimensional map of the factory, and acquires the position of the unmanned airplane 2 on the three-dimensional map (step S3).
  • the unmanned airplane 2 is an automatic flight (step S4; automatic flight)
  • the PC1 creates a flight plan for the unmanned airplane 2 (step S5) and outputs the flight plan to the unmanned airplane 2.
  • the unmanned aerial vehicle 2 autonomously flies according to the flight plan received from the PC 1 (step S6).
  • the pendant 4 acquires a movement command from the user (step S7).
  • the numerical control device 3 converts the movement command acquired by the pendant 4 into the coordinate system of the three-dimensional map (step S8).
  • the numerical control device 3 outputs the movement command converted into the coordinate system of the three-dimensional map to the unmanned aerial vehicle 2 (step S9).
  • the unmanned aerial vehicle 2 performs autonomous flight according to the movement command from the numerical control device 3 (step S10).
  • the unmanned airplane control system 100 of the first disclosure includes a coordinate system conversion unit 33 that converts the coordinate system of the machine tool into the coordinate system of the unmanned airplane 2, and the pendant 4 is an input device of the machine tool. Since the unmanned airplane 2 can be controlled by using the above, the unmanned airplane 2 can be operated without adding a dedicated device to the numerical control device 3. As the input device, an operation panel of the numerical control device 3 or a mobile terminal may be used in addition to the pendant 4. Since these input devices are familiar to the user of the numerical control device 3, they have high operability.
  • the LIDAR sensor is used as the distance sensor in the present disclosure
  • an infrared sensor, an ultrasonic sensor, or a radio wave radar sensor may be used as the distance sensor.
  • a camera or an image sensor can also be used as a distance sensor.
  • an AR marker, AR tag, QR code (registered trademark), etc. can also be used together.
  • the absolute value of the coordinates is calculated, so mapping to a three-dimensional map is unnecessary.
  • the self-position estimation method for the unmanned aerial vehicle 2 is not particularly limited.
  • the unmanned aerial vehicle control system 100 of the second disclosure includes a PC 1, an unmanned aerial vehicle 2, and a numerical control device 3.
  • the numerical control device 3 of the second disclosure includes a program storage unit 35 and a program analysis unit 36, and controls the unmanned aerial vehicle 2 according to an NC program which is a control program of the numerical control device 3.
  • the program storage unit 35 stores the NC program.
  • the NC program is a program for the numerical control device 3 to control the machine tool.
  • there is also an NC program (referred to as a control program for the unmanned aerial vehicle 2) that controls the unmanned aerial vehicle 2. If the NC program is a control program for the unmanned aerial vehicle 2, the program analysis unit 36 outputs the command content of the program to the coordinate system conversion unit 33. If the NC program is not the control program for the unmanned aerial vehicle 2, the conventional processing is performed.
  • the G code is used to set the coordinate system and command the movement of tools and workpieces.
  • the G code includes, for example, "coordinate system setting: G92, G54", "setting of movement direction of each axis: G90, G91", “plane designation: G17, G18, G19", “movement of each axis: G00, G01”. "Dwell: G04""Acceleration:G08””Deceleration:G09”"Fixed cycle: G81 to G89””Cancellation of fixed cycle: G90" and the like.
  • the coordinate system conversion unit 33 converts the coordinates “X100 Y50” of the numerical control device 3 into the coordinates of the three-dimensional map.
  • the movement command output unit 34 outputs the movement command converted into the coordinates of the three-dimensional map to the unmanned aerial vehicle 2.
  • the coordinate system conversion unit 33 also considers differences in the coordinate system and differences in the coordinate commands.
  • the NC program in addition to the "machine coordinate system", there are “work coordinate system”, “local coordinate system” and the like.
  • the "absolute value command” is a method of commanding the coordinates by the absolute value from the "machining origin (X0, Y0)".
  • “Incremental command” is a method of commanding coordinates by a relative value from the current position.
  • the coordinate system conversion unit 33 converts the coordinate system of the numerical control device 3 into the coordinate system of the three-dimensional map while considering such a command.
  • the speed and acceleration of the unmanned aerial vehicle 2 can be commanded by using the F code.
  • the speed can be commanded by "F_ (F code)" of this block. For example, in the case of "G01 X20.
  • the coordinate system conversion unit 33 converts the speed specified by the F code into the speed of the three-dimensional map, and the movement command output unit 34 outputs the converted speed to the unmanned airplane 2.
  • FIG. 8 is a flowchart showing the operation of the unmanned aerial vehicle control system 100 of the second disclosure.
  • the unmanned aerial vehicle 2 estimates its own position (step S11) and creates an environmental map (step S12).
  • the PC 1 maps the self-position of the unmanned airplane 2 and the environmental map to the three-dimensional map of the factory, and acquires the position of the unmanned airplane on the three-dimensional map (step S13).
  • the program analysis unit 36 of the numerical control device 3 analyzes the NC program (step S14), and if the NC program is not the control program of the unmanned airplane 2 (step S15; No), performs conventional processing according to the NC program (step). S16).
  • the coordinate system conversion unit 33 converts the movement commands such as coordinates, velocity, and acceleration described in the NC program into the coordinate system of the three-dimensional map.
  • the movement command output unit 34 outputs the movement command converted into the coordinate system of the three-dimensional map to the unmanned aerial vehicle 2.
  • the unmanned aerial vehicle 2 performs autonomous flight according to the movement command from the numerical control device 3 (step S18).
  • the unmanned aerial vehicle 2 can be controlled by the NC program.
  • the user of the numerical control device 3 can control the unmanned aerial vehicle 2 by using the NC program without learning the program of the unmanned aerial vehicle 2. Since the NC program is a language familiar to the user of the numerical control device 3, the operability is good.
  • the unmanned aerial vehicle control system 100 of the third disclosure includes a PC 1, an unmanned aerial vehicle 2, and a numerical control device 3.
  • the numerical control device 3 of the third disclosure includes an M code analysis unit 37 and an M code output unit 38.
  • the unmanned aerial vehicle 2 of the third disclosure includes an auxiliary function executing unit 26.
  • the M code also called an auxiliary code, is a command to output a signal to a PLC (Programmable Robot Controller) or a robot connected to the numerical control device 3.
  • the M code includes "program stop (pause): M00”, “optional stop: M01”, “program end: M02, M30”, “tool change: M06”, “workpiece change: M60”, “subprogram call: M98”, and " End of subprogram: M99 "and so on.
  • “tool exchange”, “workpiece exchange”, etc. can be instructed to the unmanned aerial vehicle 2. You can also use the M code to command the on / off of the attached device.
  • the M code analysis unit 37 analyzes the M code described in the NC program and converts the M code into the command of the unmanned aerial vehicle 2.
  • the M code output unit 38 outputs the command converted from the M code to the unmanned aerial vehicle 2.
  • the auxiliary function execution unit 26 of the unmanned aerial vehicle 2 executes the auxiliary function of the unmanned aerial vehicle 2 according to the command received from the numerical control device 3.
  • the auxiliary functions of the unmanned aerial vehicle 2 include, for example, "tool exchange”, “workpiece exchange”, and "on / off of attached devices”. In “tool exchange” and "workpiece exchange”, for example, the tools and workpieces mounted on the unmanned aerial vehicle 2 are dropped.
  • the M code is not limited to the existing one, but can be created by the user. Therefore, it is possible to create the necessary M code independently and add an auxiliary function that can be controlled by the NC program.
  • FIG. 10 is a flowchart showing the operation of the unmanned aerial vehicle control system 100 of the third disclosure.
  • the unmanned aerial vehicle 2 estimates its own position (step S21) and creates an environmental map (step S22).
  • the PC 1 maps the self-position of the unmanned airplane 2 and the environmental map to the three-dimensional map of the factory, and acquires the position of the unmanned airplane 2 on the three-dimensional map (step S23).
  • the program analysis unit 36 of the numerical control device 3 analyzes the NC program (step S24), and if the NC program is not the control program of the unmanned airplane 2 (step S25; No), performs the conventional processing according to the NC program (step S24). S26).
  • the NC program is the control program of the unmanned airplane 2 (step S25; Yes) and the M code is not described in the block being analyzed (step S27; No)
  • the coordinate system conversion unit 33 is described in the NC program.
  • the movement commands such as coordinates, speed, and acceleration are converted into the coordinate system of the three-dimensional map (step S28), and the movement command output unit 34 outputs the movement command converted into the coordinate system of the three-dimensional map to the unmanned airplane 2. ..
  • the unmanned aerial vehicle 2 performs autonomous flight according to the movement command from the numerical control device 3 (step S29).
  • the M code analysis unit 37 analyzes the command content of the M code and converts the M code into the command of the unmanned aerial vehicle 2 (step S30).
  • the M code output unit 38 outputs a command based on the M code to the unmanned aerial vehicle 2.
  • the unmanned aerial vehicle 2 operates according to the converted command (step S31).
  • the unmanned aerial vehicle control system 100 of the third disclosure includes an M code analysis unit 37 that converts the M code described in the NC program into a command to the unmanned aerial vehicle 2.
  • the M code is originally an auxiliary code that sends commands to peripheral devices of machine tools such as coolant discharge and tool change.
  • the auxiliary functions of the unmanned aerial vehicle such as "tool exchange”, “workpiece exchange”, and "on / off of attached device” can be controlled by using the M code.
  • Unmanned aerial vehicle control system 1 Personal computer (PC) 2 Unmanned airplane 3 Numerical control device 4 Pendant 5 Wireless communication device 11 Self-position acquisition unit 12 Environmental map acquisition unit 13 3D map storage unit 14 Mapping unit 21 Self-position estimation unit 22 Environmental map creation unit 25 Autonomous flight unit 26 Auxiliary function execution Unit 32 3D position acquisition unit 31 Movement command acquisition unit 33 Coordinate system conversion unit 34 Movement command output unit 35 Program storage unit 36 Program analysis unit 37 M code analysis unit 38 M code output unit 41 Movement command input unit 42 Movement command output unit 111 CPU 112 ROM 113 RAM 114 Non-volatile memory 211 CPU 212 ROM 213 RAM 214 Non-volatile memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

無人飛行機制御システム100は、無人飛行機2が自己位置を推定し、環境地図を作成する。PC1は、無人飛行機2が作成した環境地図を工場の3次元地図にマッピングし、3次元地図における無人飛行機2の自己位置を取得する。PC1は、3次元地図を基に無人飛行機2を制御するための飛行計画を作成する。無人飛行2は飛行計画に従い自律飛行を行う。数値制御装置3は、ペンダント4から受信した無人飛行機2の移動指令を取得する。数値制御装置3は、ペンダント4から受信した移動指令の座標系を、無人飛行機2を制御するための3次元地図の座標系に変換して、無人飛行機2に出力する。

Description

数値制御装置、及び記憶媒体
 本発明は、工作機械を制御する数値制御装置、及びコンピュータが読み取り可能な記憶媒体に関する。
 特許文献1には、ロボットと、ロボットを制御するロボット制御装置と、オペレータの教示入力に応じてロボットの教示信号をロボット制御装置50に送る教示装置と、撮像装置を備えた無人飛行機と、教示信号に従ってロボットが動作する間、教示信号に基づいて、教示に必要な物体の画像を撮像装置が継続して取得するように無人飛行機の飛行を制御する飛行制御部と、を具備するロボットシステムが開示されている。
 一般に生産現場では、安全上の配慮からロボットは柵内で使用される場合がある。特許文献1では、ロボットが動作する間、ロボットを制御する教示信号に基づいて、無人飛行機の飛行を制御することで、柵外からオペレータがロボットの動きを直接視認することが難しい環境においても、ロボットの教示を行うことができる。
 従来、倉庫の在庫管理や工場の状態監視のために無人飛行機(ドローン)を活用する事例は増えている。無人飛行機は、飛行物体であり、移動領域が柔軟であるため、新たな活用が期待されている。
特開2020-142326号公報
 製造現場では、無人飛行機を活用する技術が望まれている。
 本開示の一態様である数値制御装置は、工作機械の制御を行う数値制御装置であって、数値制御装置に設定された座標系における無人飛行機の移動指令を取得する移動指令取得部と、移動指令の座標系を、無人飛行機を制御するための座標系に変換する座標系変換部と、座標系変換部によって変換された移動指令を無人飛行機に出力する移動指令出力部と、を備える。
 本開示の一態様である記憶媒体は、1つ又は複数のプロセッサが実行することにより、数値制御装置に設定された座標系における無人飛行機の移動指令を取得し、移動指令の座標系を、無人飛行機を制御するための座標系に変換し、無人飛行機を制御するための座標系に変換された移動指令を前記無人飛行機に出力する、コンピュータが読み取り可能な命令を記憶する記憶媒体である。
 本発明の一態様により、製造現場で無人飛行機を活用することができる。
無人飛行機制御システムの概念図である。 無人飛行機のハードウェア構成図である。 数値制御装置のハードウェア構成図である。 第1の開示の無人飛行機制御システムのブロック図である。 ペンダントの一例を示す図である。 第1の開示の無人飛行機制御システムの動作を説明するフローチャートである。 第2の開示の無人飛行機制御システムのブロック図である。 第2の開示の無人飛行機制御システムの動作を説明するフローチャートである。 第3の開示の無人飛行機制御システムのブロック図である。 第3の開示の無人飛行機制御システムの動作を説明するフローチャートである。
[第1の開示]
 図1は、無人飛行機制御システム100の概念図である。
 無人飛行機制御システム100は、工場の3次元地図における無人飛行機の自己位置を算出するパーソナルコンピュータ(PC)1と、1台又は複数台の無人飛行機2と、無人飛行機2に移動指令を出力する数値制御装置3と、ユーザの移動指令を受け付けるペンダント4と、無人飛行機2とPC1との通信を仲介する無線通信装置5とを備える。
 無人飛行機制御システム100は、数値制御装置3を含む工場建屋に設けられる。無人飛行機2は、数値制御装置3からの制御情報に従い、工場内を移動し、作業を行う。
 無人飛行機2は、図2に示すハードウェア構成を有する。無人飛行機2が備えるCPU211は、無人飛行機2を全体的に制御するプロセッサである。CPU211はバスを介してROM212に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って無人飛行機2全体を制御する。RAM213は、一時的な計算データや外部から入力された各種データ等が一時的に格納される。
 不揮発性メモリ214は、例えば、図示しないバッテリでバックアップされたメモリ等で構成され、無人飛行機2の電源221がオフされても記憶状態が保持される。不揮発性メモリ214には、外部機器(図示省略)から読み込まれたデータ、ネットワークを介して通信装置から取得したデータ等が記憶される。不揮発性メモリ214に記憶されたデータは、無人飛行機2の実行時/利用時にはRAM213に展開されてもよい。また、ROM212には公知のプログラムなどの各種システム・プログラムが予め書き込まれている。
 センサ215は、加速度センサ、角速度センサ、電子コンパス、気圧センサ、距離センサなどである。電子コンパスは、磁力により無人飛行機の方向を取得する。距離センサは、例えば、LIDAR(Light Detection and Ranging)センサであり、パルス状に発光するレーザー照射に対する散乱光を測定する。
 無人飛行機2に搭載されるCPU211は、例えば、フライトコントローラやコンパニオンコントローラとして機能する。CPU211は必ずしも1つではなく、機能に合わせて複数のCPU211を搭載してもよい。フライトコントローラとしてのCPU211は、センサ215から取得した情報を基に機体の姿勢を適切な位置に制御する。CPU211は、加速度センサが取得した無人飛行機2の速度の変化量を基に無人飛行機2の傾きや動きを算出し、角速度センサから取得した無人飛行機2の回転速度の変化量を基に無人飛行機2の傾きや向きの変化を算出し、気圧センサから取得した空気の圧力から無人飛行機2の高度を算出する。
 コンパニオンコントローラとしてのCPU211は、LIDARセンサが取得した散乱光の値に基づき2次元もしくは3次元の点群データも算出する。点群データは、無人飛行機2の周囲の環境地図となる。CPU211は、点群同士をマッチングすることで無人飛行機2の移動量を逐次推定することもできる。移動量を積算することで自己位置を推定することができる。また、LIDARセンサを無人飛行機2の自己位置の推定に用いるには、加速度センサや角速度センサから取得した値を組み合わせてもよい。
 画像処理部216は、カメラ217で撮像した画像を適当なデータに変換してCPU211に出力する。無人飛行機2のカメラ217は、主に、ユーザが選択した機械設備を撮影する。これにより、計器の値や機械設備の動作状態などを工場の状態が把握できる。
 無線通信部218は、無線通信装置5を介してPC1とデータの送受信を行う。PC1は、無人飛行機2に対して指令を送信する。指令は、無人飛行機2の飛行計画を含む。無人飛行機2は、数値制御装置3からの飛行計画に従い作業を実施する。
 ESC(Electric Speed Controller)219は、別名アンプとも呼ばれ、各プロペラに取り付けられている。ESC219は、CPU211からの指示に従いモータの回転数を制御する。プロペラの回転数を制御することにより、プロペラ220の上下で気圧差が生じ、この気圧差により揚力が生じて、無人飛行機2が飛行する。揚力とは、無人飛行機2を押し上げるように上向きに働く力である。無人飛行機2は、プロペラ220の回転数を変えることで速度や移動方向を変えることができる。
 無人飛行機2は、プロペラ220の回転数を制御することで、ホバリング(揚力と重力が等しくなる)、上昇(4つのモータの回転数が高くなる)、下降(4つのモータの回転数が低くなる)、前後左右移動(進行方向とは反対の2枚のプロペラの回転数が高くなり進行方向に移動する)、左旋回(右回転のプロペラの回転数が高くなる)、右旋回(左回転のプロペラの回転数が高くなる)などの動作を行う。
 数値制御装置3は、図3に示すハードウェア構成を有する。
 数値制御装置3が備えるCPU111は、数値制御装置3を全体的に制御するプロセッサである。CPU111は、バス122を介してROM112に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って数値制御装置3全体を制御する。RAM113には一時的な計算データや表示データ、及び外部から入力された各種データ等が一時的に格納される。なお、PC1のハードウェア構成も図3と同様である。
 不揮発性メモリ114は、例えば図示しないバッテリでバックアップされたメモリやSSD(Solid State Drive)等で構成され、数値制御装置3の電源がオフされても記憶状態が保持される。不揮発性メモリ114には、インタフェース115を介して外部機器125から読み込まれたデータ、入力部124を介して入力されたデータ、無線通信装置を介して無人飛行機から取得されたデータ等が記憶される。不揮発性メモリ114に記憶されたデータは、実行時/利用時にはRAM113に展開されてもよい。また、ROM112には、公知のプログラムなどの各種システム・プログラムが予め書き込まれている。
 表示部123には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース117を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力部124は、プログラマの入力を、インタフェース118を介してCPU111に渡す。
 図4は、第1の開示の無人飛行機制御システム100のブロック図である。
 PC1は、無人飛行機2の自己位置を取得する自己位置取得部11、無人飛行機2の周囲の環境地図を取得する環境地図取得部12、工場の3次元地図を記憶する3次元地図記憶部13、環境地図を3次元地図にマッピングするマッピング部14、無人飛行機の飛行計画を作成する飛行計画作成部15、無人飛行機2に飛行計画を出力する飛行計画出力部16を備える。
 自己位置取得部11は無人飛行機2から自己位置を取得し、環境地図取得部12は無人飛行機2から環境地図を取得する。マッピング部14は、特徴点などを基に無人飛行機2の環境地図と3次元地図との対応付けを行い、無人飛行機2の自己位置を3次元地図の座標系にマッピングする。
 飛行計画作成部15は、無人飛行機2の飛行計画を作成する。飛行計画は、PC1が記憶する3次元地図の座標系に基づいて作成される。3次元地図の座標系は、無人飛行機2を制御するための座標系である。飛行計画出力部16は、飛行計画を無線通信装置5に出力する。飛行計画は、無線通信装置5を介して無人飛行機2に送信される。
 無人飛行機2は、自己位置を推定する自己位置推定部21、無人飛行機2の周囲の環境地図を作成する環境地図作成部22、無人飛行機2の飛行計画を受信する飛行計画受信部23、ペンダント4から手動で入力された移動指令を受信する移動指令受信部24、飛行計画や移動指令に従い自律飛行を行う自律飛行部25、を備える。
 自己位置推定部21は、加速度センサが取得した無人飛行機2の速度の変化量を基に無人飛行機2の傾きや動きを算出し、角速度センサから取得した無人飛行機2の回転速度の変化量を基に無人飛行機2の傾きや向きの変化を算出し、気圧センサから取得した空気の圧力から無人飛行機2の高度を算出し、自己の移動量を算出する。また、自己位置推定部21は、環境地図をマッチングすることで無人飛行機2の移動量を逐次推定する。移動量を積算することで自己位置を推定する。
 環境地図作成部22は、LIDARセンサが取得した散乱光の値に基づき、2次元もしくは3次元の点群データも算出する。点群データは、無人飛行機2の周囲の環境地図となる。
 飛行計画受信部23は、無線通信装置5を介してPC1から飛行計画を受信する。
 移動指令受信部24は、数値制御装置3から移動指令を受信する。
 自律飛行部25は、この移動指令に従い、自律飛行を行う。具体的には、加速度センサ、角速度センサ、気圧センサなどの各種センサから算出した自己の移動量及び姿勢を基に自己位置を推定し、飛行計画や移動指令に従い目的地に飛行する。
 数値制御装置3は、ペンダント4から入力された移動量又は座標などの移動指令を取得する移動指令取得部31、無人飛行機2の3次元地図上の自己位置を取得する3次元位置取得部32、移動指令の座標系を無人飛行機2の座標系(3次元地図)に変換する座標系変換部33、3次元地図の座標系に変換した移動指令を無人飛行機2に出力する移動指令出力部34、を備える。
 ペンダント4は、手動パルス発生器や複数のボタンを備え、無人飛行機2の移動量や座標などの移動指令を入力する移動指令入力部41、ユーザが入力した移動指令を数値制御装置3に出力する移動指令出力部42を備える。
 図5に、ペンダント4の一例を示す。図5のペンダント4は、X軸、Y軸、Z軸の座標軸を選択するボタン43と、入力の倍率を変換するボタン44、移動量を入力するダイヤル45が設けられている。軸を選択しダイヤル45を回転すると、無人飛行機の移動方向と移動量が入力できる。また、軸を選択しダイヤル45を回転し、無人飛行機2の目的地の座標を入力してもよい。ペンダント4で入力される値は、数値制御装置3が工作機械(図示省略)を制御するために設定した座標系の値である。
 数値制御装置3で使用される座標系は、主に、X軸、Y軸、Z軸の3軸の直交座標系である。これに回転軸を加えた4軸や傾斜軸を加えた5軸を制御できる設備もある。X軸、Y軸、Z軸の各軸の方向は設備の種類によって異なる。フライス盤や立体マシニングセンタでは、X軸は横方向で右が+、Y軸は前後方向で奥が+、Z軸は上下方向で上が+である。数値制御装置3で使用される座標系には、原点の位置に応じて「機械座標系」、「ワーク座標系」、「ローカル座標系」などがある。
 図6は、第1の開示の無人飛行機制御システム100の動作を示すフローチャートである。最初に、無人飛行機2は自己位置を推定し(ステップS1)、環境地図を作成する(ステップS2)。PC1は、無人飛行機2の自己位置と環境地図を工場の3次元地図にマッピングし、3次元地図上の無人飛行機2の位置を取得する(ステップS3)。
 無人飛行機2が自動飛行の場合(ステップS4;自動飛行)、PC1は、無人飛行機2の飛行計画を作成し(ステップS5)、無人飛行機2に出力する。無人飛行機2は、PC1から受信した飛行計画に従い自律飛行する(ステップS6)。
 無人飛行機2が手動飛行の場合(ステップS4;手動飛行)、ペンダント4はユーザからの移動指令を取得する(ステップS7)。数値制御装置3はペンダント4が取得した移動指令を3次元地図の座標系に変換する(ステップS8)。
 数値制御装置3は、3次元地図の座標系に変換した移動指令を無人飛行機2に出力する(ステップS9)。無人飛行機2は、数値制御装置3からの移動指令に従い自律飛行を行う(ステップS10)。
 以上説明したように、第1の開示の無人飛行機制御システム100では、工作機械の座標系を無人飛行機2の座標系に変換する座標系変換部33を備え、工作機械の入力装置であるペンダント4を用いて無人飛行機2を制御することができるため、数値制御装置3に専用の装置を追加せずとも無人飛行機2を操作できる。なお、入力装置としては、ペンダント4の他に数値制御装置3の操作盤や携帯端末を用いてもよい。これらの入力装置は、数値制御装置3のユーザが使い慣れたものであるため操作性が高い。
 なお、本開示では距離センサとしてLIDARセンサを用いたが、赤外線センサ、超音波センサ、電波によるレーダセンサを距離センサとして用いてもよい。また、カメラやイメージセンサも距離センサとして用いることもできる。カメラを使用する場合は、ARマーカやARタグ、QRコード(登録商標)などを併用することもできる。
 距離センサを使用しない例として、ビーコンや無線LAN(Local Area Network)の電波の強弱を利用して自己位置を推定する方法もある。電波の発生源からの相対位置で自己位置の座標を算出する場合には、座標の絶対値が算出されるため、3次元地図へのマッピングは不要である。無人飛行機2の自己位置推定方法については特に限定しない。
[第2の開示]
 第2の開示の無人飛行機制御システム100は、図7に示すように、PC1、無人飛行機2、数値制御装置3から構成される。第2の開示の数値制御装置3は、プログラム記憶部35とプログラム解析部36を備え、数値制御装置3の制御プログラムであるNCプログラムに従い無人飛行機2を制御する。
 プログラム記憶部35は、NCプログラムを記憶する。NCプログラムは数値制御装置3が工作機械を制御するためのプログラムである。本開示のNCプログラムには、無人飛行機2を制御するNCプログラム(無人飛行機2の制御プログラムと呼ぶ)も存在する。
 プログラム解析部36は、NCプログラムが無人飛行機2の制御プログラムであれば、プログラムの指令内容を座標系変換部33に出力する。なお、NCプログラムが無人飛行機2の制御プログラムでない場合には、従来通りの処理を行う。
 NCプログラムでは、Gコードを用いて座標系の設定や工具やワークの移動指令などを行う。
 Gコードには、例えば、「座標系の設定:G92,G54」「各軸の移動方向の設定:G90,G91」」「平面指定:G17,G18,G19」「各軸の移動:G00,G01」「ドウェル:G04」「加速:G08」「減速:G09」「固定サイクル:G81~G89」「固定サイクルのキャンセル:G90」などがある。
 「G53 G0 G90 X100 Y50」というNCプログラムにおいて、「G53」は「座標系(機械座標系)」、「G0」は「指令内容(位置決め指令)」、「G90」は「絶対値指令」、「X100 Y50」は目的地の座標を示している。すなわち、「G53 G0 G90 X100 Y50」は、「機械座標系」の座標「X100 Y50」に「位置決め」させる指令である。
 プログラム解析部36がこのようなGコードを読み出すと、座標系変換部33が数値制御装置3の座標「X100 Y50」を3次元地図の座標に変換する。移動指令出力部34は、3次元地図の座標に変換した移動指令を無人飛行機2に出力する。
 座標系変換部33は、座標系の違いや座標指令の違いも考慮する。NCプログラムでは、「機械座標系」の他に、「ワーク座標系」、「ローカル座標系」などがある。また、座標の指定の方法には「絶対値指令」「インクリメンタル指令」がある。「絶対値指令」は「加工原点(X0,Y0)」からの絶対値で座標を指令する方法である。「インクリメンタル指令」は、現在位置からの相対値で座標を指令する方法である。座標系変換部33は、このような指令を考慮しながら、数値制御装置3の座標系から3次元地図の座標系への変換を行う。
 また、Gコードでは、Fコードを用いて、無人飛行機2の速度や加速度を指令できる。指令は複数でもよい。例えば、「G01」の形式は「G01 X_ Y_ Z_F_;」である。このブロックの「F_(Fコード)」で速度を指令できる。例えば、「G01 X20. F1000」とした場合には、「F1000」の速度でX軸だけが「20」の位置に移動する。速度が指定されている場合、座標系変換部33は、Fコードで指定された速度を3次元地図の速度に変換し、移動指令出力部34は変換された速度を無人飛行機2に出力する。
 図8は、第2の開示の無人飛行機制御システム100の動作を示すフローチャートである。最初に、無人飛行機2は自己位置を推定し(ステップS11)、環境地図を作成する(ステップS12)。PC1は、無人飛行機2の自己位置と環境地図を工場の3次元地図にマッピングし、3次元地図上の無人飛行機の位置を取得する(ステップS13)。
 数値制御装置3のプログラム解析部36は、NCプログラムを解析し(ステップS14)、NCプログラムが無人飛行機2の制御プログラムでなければ(ステップS15;No)、NCプログラムに従い従来の処理を行う(ステップS16)。
 NCプログラムが無人飛行機2の制御プログラムであれば(ステップS15;Yes)、座標系変換部33は、NCプログラムに記述された座標、速度、加速度などの移動指令を3次元地図の座標系に変換する(ステップS17)。移動指令出力部34は、3次元地図の座標系に変換した移動指令を無人飛行機2に出力する。無人飛行機2は、数値制御装置3からの移動指令に従い自律飛行を行う(ステップS18)。
 以上説明したように、第2の開示の無人飛行機制御システム100では、NCプログラムで無人飛行機2を制御することができる。数値制御装置3のユーザは、無人飛行機2のプログラムを習得しなくとも、NCプログラムを用いて無人飛行機2を制御することができる。NCプログラムは、数値制御装置3のユーザにとって使い慣れた言語であるため操作性がよい。
[第3の開示]
 第3の開示の無人飛行機制御システム100は、図9に示すように、PC1、無人飛行機2、数値制御装置3を含む。第3の開示の数値制御装置3は、Mコード解析部37、Mコード出力部38を備える。第3の開示の無人飛行機2は補助機能実行部26を備える。Mコードとは、補助コードともよばれ、数値制御装置3に接続されたPLC(Programmable Robot Controller)やロボットに信号を出力する指令である。
 Mコードには、「プログラムストップ(一時停止):M00」「オプショナルストップ:M01」「プログラム終了:M02,M30」「工具交換:M06」「工作物交換:M60」「サブプログラム呼出:M98」「サブプログラムの終了:M99」などがある。
 Mコードを用いて、「工具交換」、「工作物交換」などを無人飛行機2に指令できる。また、Mコードを用いて、付属デバイスのオン・オフも指令できる。
 Mコード解析部37は、NCプログラムに記述されたMコードを解析し、Mコードを無人飛行機2の指令に変換する。Mコード出力部38は、Mコードから変換された指令を無人飛行機2に出力する。
 無人飛行機2の補助機能実行部26は、数値制御装置3から受信した指令に従い、無人飛行機2の補助機能を実行する。無人飛行機2の補助機能には、例えば、「工具交換」「工作物交換」「付属デバイスのオン・オフ」などがある。「工具交換」や「工作物交換」では、例えば、無人飛行機2に搭載した工具や工作物を投下する。
 また、Mコードは既存のものだけでなく、ユーザが作成することもできる。そのため、必要なMコードを独自に作成し、NCプログラムで制御可能な補助機能を追加することができる。
 図10は、第3の開示の無人飛行機制御システム100の動作を示すフローチャートである。最初に、無人飛行機2は自己位置を推定し(ステップS21)、環境地図を作成する(ステップS22)。PC1は、無人飛行機2の自己位置と環境地図を工場の3次元地図にマッピングし、3次元地図上の無人飛行機2の位置を取得する(ステップS23)。
 数値制御装置3のプログラム解析部36は、NCプログラムを解析し(ステップS24)、NCプログラムが無人飛行機2の制御プログラムでなければ(ステップS25;No)、NCプログラムに従い従来の処理を行う(ステップS26)。
 NCプログラムが無人飛行機2の制御プログラムであり(ステップS25;Yes)、解析中のブロックにMコードが記述されていなければ(ステップS27;No)、座標系変換部33は、NCプログラムに記述された座標、速度、加速度などの移動指令を3次元地図の座標系に変換し(ステップS28)、移動指令出力部34が3次元地図の座標系に変換された移動指令を無人飛行機2に出力する。無人飛行機2は、数値制御装置3からの移動指令に従い自律飛行を行う(ステップS29)。
 NCプログラムにMコードが記述されている場合(ステップS27;Yes)、Mコード解析部37は、Mコードの指令内容を解析し、Mコードを無人飛行機2の指令に変換する(ステップS30)。Mコード出力部38は、Mコードに基づく指令を無人飛行機2に出力する。無人飛行機2は、変換された指令に従い動作する(ステップS31)。
 以上説明したように、第3の開示の無人飛行機制御システム100では、NCプログラムに記述されたMコードを無人飛行機2への指令に変換するMコード解析部37を備える。Mコードは、本来、クーラントの吐出、工具交換など、工作機械の周辺機器に指令を送る補助コードである。第3の開示の無人飛行機制御システム100では、Mコードを用いて、「工具交換」「工作物交換」「付属デバイスのオン・オフ」などを無人飛行機の補助機能も制御できる。
  100 無人飛行機制御システム
  1   パーソナルコンピュータ(PC)
  2   無人飛行機
  3   数値制御装置
  4   ペンダント
  5   無線通信装置
  11  自己位置取得部
  12  環境地図取得部
  13  3次元地図記憶部
  14  マッピング部
  21  自己位置推定部
  22  環境地図作成部
  25  自律飛行部
  26  補助機能実行部
  32  3次元位置取得部
  31  移動指令取得部
  33  座標系変換部
  34  移動指令出力部
  35  プログラム記憶部
  36  プログラム解析部
  37  Mコード解析部
  38  Mコード出力部
  41  移動指令入力部
  42  移動指令出力部
  111 CPU
  112 ROM
  113 RAM
  114 不揮発性メモリ
  211 CPU
  212 ROM
  213 RAM
  214 不揮発性メモリ

Claims (10)

  1.  工作機械の制御を行う数値制御装置であって、
     前記数値制御装置に設定された座標系における無人飛行機の移動指令を取得する移動指令取得部と、
     前記移動指令の座標系を、前記無人飛行機を制御するための座標系に変換する座標系変換部と、
     前記座標系変換部によって変換された前記移動指令を前記無人飛行機に出力する移動指令出力部と、
     を備える数値制御装置。
  2.  前記移動指令取得部は、ユーザが手動で入力した前記移動指令を前記数値制御装置の入力装置から取得する、請求項1記載の数値制御装置。
  3.  前記移動指令取得部は、前記数値制御装置の制御プログラムを解析するプログラム解析部であり、
     前記プログラム解析部は、前記制御プログラムに記述された前記無人飛行機の移動指令を取得する、請求項1記載の数値制御装置。
  4.  前記移動指令は、前記無人飛行機の速度、加速、減速の何れか1つ又は複数を含む、請求項1記載の数値制御装置。
  5.  前記無人飛行機の補助機能に関するコードが前記制御プログラムに記述されている場合、前記コードを前記無人飛行機の補助機能の指令に変換する補助コード解析部と、
     前記補助機能の指令を前記無人飛行機に出力する補助コード出力部と、
     を備える請求項3記載の数値制御装置。
  6.  1つ又は複数のプロセッサが実行することにより、
     数値制御装置に設定された座標系における無人飛行機の移動指令を取得し、
     前記移動指令の座標系を、前記無人飛行機を制御するための座標系に変換し、
     前記無人飛行機を制御するための座標系に変換された移動指令を前記無人飛行機に出力する、
     コンピュータが読み取り可能な命令を記憶する記憶媒体。
  7.  前記数値制御装置の入力装置から、ユーザが手動で入力した前記無人飛行機の移動指令を取得する、請求項6記載の記憶媒体。
  8.  前記数値制御装置の制御プログラムを解析し、前記制御プログラムに記述された前記無人飛行機の移動指令を取得する、請求項6記載の記憶媒体。
  9.  前記移動指令は、前記無人飛行機の速度、加速、減速、の何れか1つ又は複数を含む、請求項6記載の記憶媒体。
  10.  前記無人飛行機の補助機能に関するコードが前記制御プログラムに記述されている場合、前記補助機能に関するコードを前記無人飛行機の補助機能の指令に変換し、
     前記補助機能の指令を前記無人飛行機に出力する、請求項8記載の記憶媒体。
PCT/JP2021/042067 2020-11-20 2021-11-16 数値制御装置、及び記憶媒体 WO2022107760A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112021004890.2T DE112021004890T5 (de) 2020-11-20 2021-11-16 Numerische steuerung und speichermedium
US18/034,948 US20230400866A1 (en) 2020-11-20 2021-11-16 Numerical controller, and storage medium
CN202180076140.5A CN116529160A (zh) 2020-11-20 2021-11-16 数值控制装置以及存储介质
JP2022563766A JP7509914B2 (ja) 2020-11-20 2021-11-16 数値制御装置、及び記憶媒体

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020193375 2020-11-20
JP2020-193375 2020-11-20

Publications (1)

Publication Number Publication Date
WO2022107760A1 true WO2022107760A1 (ja) 2022-05-27

Family

ID=81708973

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/042067 WO2022107760A1 (ja) 2020-11-20 2021-11-16 数値制御装置、及び記憶媒体

Country Status (5)

Country Link
US (1) US20230400866A1 (ja)
JP (1) JP7509914B2 (ja)
CN (1) CN116529160A (ja)
DE (1) DE112021004890T5 (ja)
WO (1) WO2022107760A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170269594A1 (en) * 2016-03-16 2017-09-21 Bryan Sydnor Controlling an Unmanned Aerial System
JP2019059314A (ja) * 2017-09-26 2019-04-18 日本電信電話株式会社 飛行制御装置、方法、及びプログラム
JP2019120986A (ja) * 2017-12-28 2019-07-22 エヌ・ティ・ティ・データ・カスタマサービス株式会社 無人飛行機の飛行経路制御システム及び無人飛行機の飛行経路制御方法
JP2020520838A (ja) * 2017-03-31 2020-07-16 ベックホフ オートメーション ゲーエムベーハー 自動制御システムおよび自動制御システムの動作方法
JP2020142326A (ja) * 2019-03-06 2020-09-10 ファナック株式会社 ロボットシステム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6632095B1 (ja) 2019-01-16 2020-01-15 株式会社エクサウィザーズ 学習済モデル生成装置、ロボット制御装置、及び、プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170269594A1 (en) * 2016-03-16 2017-09-21 Bryan Sydnor Controlling an Unmanned Aerial System
JP2020520838A (ja) * 2017-03-31 2020-07-16 ベックホフ オートメーション ゲーエムベーハー 自動制御システムおよび自動制御システムの動作方法
JP2019059314A (ja) * 2017-09-26 2019-04-18 日本電信電話株式会社 飛行制御装置、方法、及びプログラム
JP2019120986A (ja) * 2017-12-28 2019-07-22 エヌ・ティ・ティ・データ・カスタマサービス株式会社 無人飛行機の飛行経路制御システム及び無人飛行機の飛行経路制御方法
JP2020142326A (ja) * 2019-03-06 2020-09-10 ファナック株式会社 ロボットシステム

Also Published As

Publication number Publication date
JPWO2022107760A1 (ja) 2022-05-27
US20230400866A1 (en) 2023-12-14
DE112021004890T5 (de) 2023-08-17
JP7509914B2 (ja) 2024-07-02
CN116529160A (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
Bouabdallah et al. Autonomous miniature flying robots: coming soon!-research, development, and results
Kim et al. Accurate modeling and robust hovering control for a quad-rotor VTOL aircraft
Bouabdallah et al. Design and control of a miniature quadrotor
CN111880573A (zh) 一种基于视觉惯导融合的四旋翼自主导航方法
JP2019059314A (ja) 飛行制御装置、方法、及びプログラム
Koo et al. Hierarchical hybrid system design on Berkeley UAV
Miyazaki et al. Wire-suspended device control based on wireless communication with multirotor for long reach-aerial manipulation
CN113190020A (zh) 一种移动机器人队列***及路径规划、跟随方法
Pritzl et al. Cooperative navigation and guidance of a micro-scale aerial vehicle by an accompanying UAV using 3D LiDAR relative localization
Xuan-Mung et al. Quadcopter precision landing on moving targets via disturbance observer-based controller and autonomous landing planner
Asadi et al. An integrated aerial and ground vehicle (UAV-UGV) system for automated data collection for indoor construction sites
WO2022107760A1 (ja) 数値制御装置、及び記憶媒体
WO2022107761A1 (ja) 無人飛行機制御装置、及び記憶媒体
Kawabata et al. Autonomous flight drone with depth camera for inspection task of infra structure
WO2019172335A1 (ja) 飛行制御装置、方法、プログラム、及び記憶媒体
Arifin et al. Experimental modeling of a quadrotor uav using an indoor local positioning system
WO2022107774A1 (ja) 飛行経路特定装置、およびコンピュータ読取可能な記憶媒体
Phang et al. Autonomous tracking and landing on moving ground vehicle with multi-rotor UAV
US20230107289A1 (en) Information processing method, information processor, and program
Bipin et al. Autonomous navigation of generic quadrocopter with minimum time trajectory planning and control
Adolf et al. An unmanned helicopter for autonomous flights in urban terrain
Bouzerzour et al. Robust uncooperative ground target surveillance using vision-based sliding mode control of quadrotor uav
Surmann et al. Teleoperated visual inspection and surveillance with unmanned ground and aerial vehicles
WO2022107758A1 (ja) 無人飛行機制御装置、及び記憶媒体
Nohara et al. Development of drone system embedded with multiple distance sensors for inspection task of social infrastructure

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: 21894634

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022563766

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 202180076140.5

Country of ref document: CN

122 Ep: pct application non-entry in european phase

Ref document number: 21894634

Country of ref document: EP

Kind code of ref document: A1