WO2022103196A1 - 로봇의 기능 안전 시스템 - Google Patents

로봇의 기능 안전 시스템 Download PDF

Info

Publication number
WO2022103196A1
WO2022103196A1 PCT/KR2021/016526 KR2021016526W WO2022103196A1 WO 2022103196 A1 WO2022103196 A1 WO 2022103196A1 KR 2021016526 W KR2021016526 W KR 2021016526W WO 2022103196 A1 WO2022103196 A1 WO 2022103196A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile robot
sensor
sensors
redundancy
duplication
Prior art date
Application number
PCT/KR2021/016526
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
Priority claimed from KR1020210153766A external-priority patent/KR102651026B1/ko
Application filed by 주식회사 유진로봇 filed Critical 주식회사 유진로봇
Priority to EP21892363.9A priority Critical patent/EP4257301A1/en
Publication of WO2022103196A1 publication Critical patent/WO2022103196A1/ko
Priority to US18/316,927 priority patent/US20240077618A1/en
Priority to US18/316,889 priority patent/US20240075620A1/en
Priority to US18/316,909 priority patent/US20240075622A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/022Optical sensing devices using lasers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • 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/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • 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/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/242Means based on the reflection of waves generated by the vehicle
    • G05D1/2424Means based on the reflection of waves generated by the vehicle for monitoring a plurality of zones
    • 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/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • G05D1/622Obstacle avoidance
    • G05D1/637Obstacle avoidance using safety zones of adjustable size or shape
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39091Avoid collision with moving obstacles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/10Land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2111/00Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
    • G05D2111/10Optical signals
    • G05D2111/17Coherent light, e.g. laser signals

Definitions

  • the present invention relates to a functional safety system for a robot, and more particularly, to an apparatus and method for creating a dynamic safety zone for a mobile robot, which creates a safety zone that is an area for detecting whether there is an obstacle.
  • the present invention relates to a functional safety system for a robot, and more particularly, dualization of a mobile robot, which duplicates a module to satisfy pl-d (performance level d) required for functional safety of a robot. It relates to an apparatus and method for modularizing system configuration.
  • the present invention relates to a functional safety system of a robot, and more particularly, a sensor of a mobile robot that doubles a module to satisfy pl-d (performance level d) required for functional safety of a robot. It relates to a redundancy apparatus and method.
  • 1 is a view for explaining a conventional safe zone creation method.
  • the shape of a static zone is input for each speed specified by the user and stored, and then, when the speed is reached, it is changed to the zone saved by the user and is in the zone. It is a method to ensure safety according to the number and shape of zones according to the speed specified by the user by checking whether there are obstacles and stopping. As the driving direction of the robot is diversified, the number of zones according to the speed must also increase as much as the driving direction. Therefore, the method in which the user directly inputs the safety zone has a limit according to the number of zones.
  • the conventional safe zone creation method is a method in which the user matches and stores the speed and the safety zone and the safety zone is changed when the corresponding condition is met, and the number of safety zones is limited. , as the density between the safety zones increases, the number of safety zones increases, and the risk of user faults by users increases.
  • FIG. 2 is a diagram for explaining a redundancy concept for pl-d (performance level d) category 3 required for functional safety of a robot.
  • the redundancy of the module is required at a performance level (pl) related to functional safety.
  • the conventional method has a problem in that when an existing sensor is removed or a new sensor is added, the configuration of the system must be changed according to the change in order to satisfy the performance level pl of the robot.
  • a redundant system can be implemented simply by using a performance level d (pl-d) certified LiDAR sensor, but the cost of a performance level d (pl-d) certified LiDAR sensor is high. There is a problem in that it costs a lot to implement a redundant system, and it is difficult to implement flexible functions because only the functions provided by the manufacturer of the LiDAR sensor can be used.
  • each stage should be duplicated.
  • the input stage is duplicated with "LiDAR sensor A(I1)” and “LiDAR sensor B(I2)”
  • the logic stage is "LiDAR Logic board A(L1)” and It is redundant with “LiDAR Logic board B(L2)”
  • the output terminal is redundant with "O1” and "O2", and if the result is "0 or 2", it can be stopped.
  • An object of the present invention is to provide a device for creating a dynamic safety zone for a mobile robot, which generates a safety zone required for functional safety of the mobile robot by changing in real time according to the shape and speed of the mobile robot, and to provide a way.
  • an object of the present invention is to duplicate the entire system architecture in order to satisfy pl-d (performance level d) required in the functional safety of the robot, the redundant system configuration of the mobile robot To provide a modular device and method.
  • an object of the present invention is to duplicate the sensor using the obstacle information detected through the sensor in order to satisfy pl-d (performance level d) required in the functional safety of the robot, a mobile robot
  • An object of the present invention is to provide a sensor redundancy device and method.
  • an apparatus for generating a dynamic safe zone for a mobile robot comprising: an information acquiring unit for acquiring a moving direction and a moving speed of the mobile robot; and a safety zone for the mobile robot based on at least one of shape information of the mobile robot, a moving direction of the mobile robot obtained through the information obtaining unit, and a moving speed of the mobile robot obtained through the information obtaining unit. zone) and a safety zone generator that dynamically creates the zone.
  • the safe zone generating unit acquires a future predicted position of the mobile robot based on the moving direction and the moving speed of the mobile robot, and moves the mobile robot based on shape information of the mobile robot and the future predicted position of the mobile robot Safe zones can be dynamically created for robots.
  • the safe zone generating unit obtains the movement speed in the x-axis direction and the movement speed in the y-axis direction based on the movement direction and movement speed of the mobile robot, and the future predicted x-axis based on the movement speed in the x-axis direction
  • the position may be acquired, a future predicted y-axis position may be acquired based on the movement speed in the y-axis direction, and a future predicted position of the mobile robot may be acquired based on the future predicted x-axis position and the future predicted y-axis position.
  • the safety zone generator acquires a default safety zone based on the shape information of the mobile robot, and dynamically creates a safety zone for the mobile robot based on the default safety zone and the future expected position of the mobile robot. can be created with
  • the safety zone generator is configured to obtain a front, rear, left, and right distance based on the center point of the mobile robot based on the shape information of the mobile robot, and four vertices based on the center point and the front and rear left and right distances of the mobile robot A default safe zone can be obtained.
  • the safety zone generator may dynamically create a safety zone for the mobile robot by varying the front, rear, left and right distances according to the default safety zone, based on the predicted future position of the mobile robot.
  • the safety zone generator based on the current position of the mobile robot and the future predicted position of the mobile robot, obtains a plurality of sub-safe zones by varying the front, rear, left, and right distances according to the default safety zone a plurality of times, and A safety zone for the mobile robot can be dynamically created based on the sub-safe zone.
  • a sensor duplication apparatus for a mobile robot, comprising: an input unit on which a plurality of sensors are mounted; a logic unit on which a plurality of logic boards corresponding to each of the plurality of sensors mounted on the input unit are mounted; an output unit that transmits an output value to the outside based on the outputs of the plurality of logic boards mounted on the logic unit; and a control unit configured to perform duplication of sensors in units of a preset duplication area based on obstacle information detected through each of the plurality of sensors.
  • the controller may perform duplication of the two sensors based on obstacle information detected through the two sensors corresponding to the duplication area.
  • the controller determines that duplication of the two sensors is successful, and obstacle information detected through the two sensors corresponding to the duplication area If do not match, it can be judged that the duplication of the two sensors has failed.
  • control unit may check whether the obstacle information detected through the two sensors corresponding to the redundancy area coincides with each other using preset sensor error information.
  • the controller may perform duplication of the two sensors using obstacle information detected from each of the two sensors based on a dynamic safety zone generated by each of the two sensors corresponding to the duplication area. there is.
  • an apparatus for modularizing a dual system configuration of a mobile robot comprising: an input unit on which a plurality of sensors are mounted; a logic unit on which a plurality of logic boards corresponding to each of the plurality of sensors mounted on the input unit are mounted; an output unit for transmitting an output value to the outside using a redundancy parameter based on the outputs of the plurality of logic boards mounted on the logic unit; and a control unit configured to change the value of the redundancy parameter including logic board identification information, logic board type information, and sensor location information based on the redundancy target information input by the user.
  • the prediction of the mobile robot according to the speed/direction without input of the safety zone by the user through the shape information and the direction/speed information of the mobile robot By calculating the position and automatically creating a dynamic safety zone, it can be used for mobile robots equipped with various wheels, such as the diff wheel and the Mecanum wheel.
  • safety zones for all directions are automatically created without the user's direct input of the safety zone, it is possible to perform a safety function for the density and omnidirectionality between the safety zones, and a user fault by user input can be greatly reduced.
  • the overall system configuration ( system architecture), sensors can be removed or new sensors can be added without changing the overall system configuration.
  • an obstacle detected through a sensor to satisfy pl-d (performance level d) required for functional safety of the robot By duplicating the sensor using information, it is possible to implement a redundant system using a general LiDAR sensor, which is inexpensive because it does not receive pl-d certification.
  • 1 is a view for explaining a conventional safe zone creation method.
  • FIG. 2 is a diagram for explaining a redundancy concept for pl-d (performance level d) category 3 required for functional safety of a robot.
  • FIG. 3 is a block diagram illustrating an apparatus for generating a dynamic safe zone of a mobile robot according to the first embodiment of the present invention.
  • FIG. 4 is a view for explaining a process of creating a dynamic safe zone according to the first embodiment of the present invention.
  • FIG. 5 is a diagram for explaining an operation of acquiring a default safe zone according to the first embodiment of the present invention.
  • FIG. 6 is a diagram for explaining an operation of obtaining a predicted future location according to the first embodiment of the present invention.
  • FIG. 7 is a view for explaining a dynamic safe zone creation operation according to the first embodiment of the present invention.
  • FIG. 8 is a view for explaining an example of dynamic safe zone creation according to the first embodiment of the present invention, and shows a case of straight movement on one axis.
  • FIG. 9 is a view for explaining a dynamic safe zone creation operation of diagonal movement according to the first embodiment of the present invention.
  • FIG. 10 is a view for explaining an example of dynamic safe zone creation according to the first embodiment of the present invention, and shows a case of diagonal movement on the x-axis and the y-axis.
  • 11 is a view for explaining an operation of creating a dynamic safe zone of rotational movement according to the first embodiment of the present invention.
  • FIG. 12 is a view for explaining an example of dynamic safe zone creation according to the first embodiment of the present invention, and shows a case of rotational movement.
  • FIG. 13 is a view for explaining an example of the creation of a dynamic safe zone according to the first embodiment of the present invention, and shows a case in which rotational movement and straight movement are simultaneously generated.
  • FIG. 14 is a flowchart illustrating a method for generating a dynamic safe zone of a mobile robot according to the first embodiment of the present invention.
  • 15 is a block diagram illustrating an apparatus for modularizing a dual system configuration of a mobile robot according to a second embodiment of the present invention.
  • FIG. 16 is a block diagram for explaining the detailed configuration of the redundant system configuration modular device shown in FIG. 15 .
  • 17 is a view for explaining an example of implementation of a modularizing device for configuring a redundant system of a mobile robot according to a second embodiment of the present invention.
  • FIG. 18 is a flowchart for explaining a method for modularizing a redundant system configuration of a mobile robot according to a second embodiment of the present invention.
  • FIG. 19 is a block diagram illustrating a sensor duplication apparatus of a mobile robot according to a third embodiment of the present invention.
  • 20 is a diagram for explaining a process of duplicating a sensor according to a third embodiment of the present invention.
  • 21 is a block diagram for explaining an input unit and a logic unit of an example of the sensor duplication apparatus of the mobile robot according to the third embodiment of the present invention.
  • FIG. 22 is a view for explaining a duplication area of the sensor duplication device shown in FIG. 21 .
  • FIG. 23 is a diagram for explaining a redundancy area according to an obstacle of the sensor duplication device shown in FIG. 21 .
  • 24 is a view for explaining a duplication area of another example of the sensor duplication apparatus of the mobile robot according to the third embodiment of the present invention.
  • 25 is a flowchart illustrating a sensor duplication method of a mobile robot according to a third embodiment of the present invention.
  • first and second are for distinguishing one component from other components, and the scope of rights should not be limited by these terms.
  • a first component may be termed a second component, and similarly, a second component may also be termed a first component.
  • identification symbols eg, a, b, c, etc.
  • each step is clearly Unless a specific order is specified, the order may differ from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.
  • ' ⁇ unit' as used herein means software or a hardware component such as a field-programmable gate array (FPGA) or ASIC, and ' ⁇ unit' performs certain roles.
  • '-part' is not limited to software or hardware.
  • ' ⁇ ' may be configured to reside on an addressable storage medium or may be configured to refresh one or more processors.
  • ' ⁇ ' indicates components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data structures and variables.
  • the functions provided in the components and ' ⁇ units' may be combined into a smaller number of components and ' ⁇ units' or further separated into additional components and ' ⁇ units'.
  • the functional safety system of the robot according to the present invention can dynamically create a safety zone and duplicate the system module and LiDAR sensor for pl-d (performance level d).
  • FIGS. 3 to 14 An apparatus and method for generating a dynamic safe zone for a mobile robot, which is a first embodiment of a functional safety system for a robot according to the present invention, will be described in detail with reference to FIGS. 3 to 14 .
  • FIG. 3 is a block diagram illustrating an apparatus for generating a dynamic safe area of a mobile robot according to a first embodiment of the present invention
  • FIG. 4 is a view for explaining a process of creating a dynamic safe area according to the first embodiment of the present invention
  • 5 is a diagram for explaining a default safe zone acquisition operation according to the first embodiment of the present invention
  • FIG. 6 is a diagram for explaining a future expected location acquisition operation according to the first embodiment of the present invention
  • 7 is a view for explaining a dynamic safe zone creation operation according to the first embodiment of the present invention.
  • the apparatus for generating a dynamic safe area for a mobile robot (hereinafter referred to as a 'dynamic safe area generating apparatus') 100 according to the first embodiment of the present invention is necessary for functional safety of the mobile robot.
  • a safety zone is created by changing in real time according to the shape and speed of the mobile robot.
  • the present invention may be used in household cleaning robots, cleaning robots for public buildings, logistics robots, service robots, and industrial robots.
  • the dynamic safety zone generating apparatus 100 has a limit on the number of safety zones due to a method in which a user directly inputs a safety zone according to the speed and direction of the mobile robot, which is a conventionally used method. Deviating from the method with high risk of user fault, it calculates the expected position of the mobile robot according to the speed/direction without inputting the safety zone by the user through the shape information and direction/speed information of the mobile robot and automatically dynamic By creating a dynamic safety zone, it can be used for both mobile robots equipped with various wheels such as diff wheels and Mecanum wheels.
  • the present invention automatically creates safety zones for all directions without the user's direct input of the safety zone. It can perform safety functions for density and omnidirectional, and can greatly reduce user faults caused by user input.
  • the apparatus 100 for generating a dynamic safe zone according to the present invention may be mounted on a mobile robot and dynamically create a safety zone based on information obtained from a sensor mounted on the mobile robot.
  • the apparatus 100 for generating a dynamic safe area according to the present invention is mounted on a server that remotely manages the mobile robot through wireless communication and dynamically creates a safe area of the mobile robot based on information provided from the mobile robot, , it is also possible to provide information about the created safety zone to the mobile robot.
  • the dynamic safe area generating apparatus 100 may include an information obtaining unit 110 and a safe area generating unit 130 .
  • the information acquisition unit 110 acquires a moving direction and a moving speed of the mobile robot.
  • the moving direction of the mobile robot refers to one of the moving direction according to the straight movement of the mobile robot, the proceeding direction according to the rotational movement of the mobile robot, and the proceeding direction according to the case where the rotational movement and the straight movement of the mobile robot occur simultaneously.
  • the linear movement of the mobile robot refers to one of a linear movement on the x-axis, a linear movement on the y-axis, and a diagonal movement on the x-axis and the y-axis.
  • the rotational movement of the mobile robot refers to one of a rotational movement to the left and a rotational movement to the right.
  • the safe zone generating unit 130 is based on at least one of shape information of the mobile robot, a moving direction of the mobile robot obtained through the information obtaining unit 110 , and a moving speed of the mobile robot obtained through the information obtaining unit 110 . to dynamically create a safety zone for the mobile robot.
  • the safety zone generator 130 may dynamically create a safety zone for the mobile robot in a preset cycle unit.
  • the safe zone generating unit 130 may dynamically create a safe zone for the mobile robot.
  • the safe zone generating unit 130 may acquire the predicted future position of the mobile robot based on the moving direction and the moving speed of the mobile robot. For example, as shown in FIG. 6 , the safe zone generator 130 may acquire the expected future position of the mobile robot based on the current center point of the mobile robot based on the moving direction and the moving speed of the mobile robot. there is.
  • the safe zone generator 130 may acquire the movement speed in the x-axis direction and the movement speed in the y-axis direction based on the movement direction and movement speed of the mobile robot.
  • the safe zone generator 130 may obtain a future predicted x-axis position of the mobile robot based on the movement speed in the x-axis direction, and may obtain a future predicted y-axis position of the mobile robot based on the movement speed in the y-axis direction. there is.
  • the safe zone generator 130 may acquire a future predicted position of the mobile robot based on the predicted future x-axis position and the future predicted y-axis position.
  • the safe zone generating unit 130 may obtain a future predicted position of the mobile robot through [Equation 1] below.
  • future location.x represents a future predicted x-axis location of the mobile robot
  • future location.y represents a future predicted y-axis location of the mobile robot
  • speed.x represents the moving speed of the mobile robot in the x-axis direction
  • speed.y represents the moving speed of the mobile robot in the y-axis direction.
  • the braking distance represents the distance it takes the mobile robot to stop, and is preset according to the mobile robot's speed.
  • the margin distance indicates a pre-set clearance distance for the safety of the mobile robot.
  • the response time is the response time of the sensor mounted on the mobile robot, and can be obtained through [Equation 2] below.
  • the sensor scanning time represents a scanning time of a sensor mounted on the mobile robot.
  • the sampling count indicates the number of sampling times of the sensor mounted on the mobile robot.
  • communication delay represents the communication delay time of the sensor mounted on the mobile robot.
  • the margin response time indicates the margin response time preset for accurate measurement of the sensor mounted on the mobile robot.
  • the safety zone generator 130 may dynamically create a safety zone for the mobile robot based on the shape information of the mobile robot and the predicted future position of the mobile robot.
  • the shape information of the mobile robot refers to information about the outer shape of the robot.
  • the safety zone generator 130 acquires a default safety zone based on the shape information of the mobile robot, and dynamically creates a safety zone for the mobile robot based on the default safety zone and the future predicted position of the mobile robot. can create
  • the safety zone generator 130 acquires the front, rear, left, and right distances based on the center point of the mobile robot based on the shape information of the mobile robot, and a default consisting of four vertices based on the center point and the front and rear left and right distances of the mobile robot A safe zone can be obtained.
  • the safe zone generating unit 130 performs a first distance (front distance), a second distance (rear distance), a third distance (left distance) and a second distance based on the center point of the mobile robot. 4 distances (right distances) may be acquired, and a default safe zone may be acquired based on the obtained first to fourth distances.
  • the safety zone generator 130 may dynamically create a safety zone for the mobile robot by varying the front, rear, left, and right distances according to the default safety zone, based on the predicted future position of the mobile robot. For example, as shown in FIG. 7 , the safety zone generator 130 may dynamically create a safety zone with reference to the future predicted position of the mobile robot based on the default safety zone based on the current center point position of the mobile robot. there is. In this case, the distance of the safe zone can be obtained through [Equation 3] below.
  • zone distance speed * response time + braking distance + margin distance
  • speed represents the moving speed of the mobile robot.
  • the response time is the response time of the sensor mounted on the mobile robot, and can be obtained through [Equation 2] above.
  • the braking distance represents the distance it takes the mobile robot to stop, and is preset according to the mobile robot's speed.
  • the margin distance indicates a pre-set clearance distance for the safety of the mobile robot.
  • the safety zone generator 130 obtains a plurality of sub safety zones by varying the front, rear, left and right distances according to the default safety zone multiple times based on the current position of the mobile robot and the predicted future position of the mobile robot.
  • the safe zone generating unit 130 sets the path of the mobile robot from the starting point to the target point by using the current position of the mobile robot as the starting point and the future expected position of the mobile robot as the target point in a unit of a preset distance. It is possible to obtain a sub-safety zone for each preset distance unit by dividing, and dynamically create a safety zone for the mobile robot by overlapping a plurality of obtained sub-safety zones with each other.
  • FIG. 8 is a view for explaining an example of dynamic safe zone creation according to the first embodiment of the present invention, and shows a case of straight movement on one axis
  • FIG. 9 is a diagonal line according to the first embodiment of the present invention.
  • It is a diagram for explaining an operation of creating a dynamic safe zone of movement
  • FIG. 10 is a diagram for explaining an example of creating a dynamic safe zone according to the first embodiment of the present invention, in the case of diagonal movement on the x-axis and the y-axis
  • FIG. 11 is a view for explaining a dynamic safe zone creation operation of rotational movement according to the first embodiment of the present invention
  • FIG. 12 describes an example of dynamic safety zone creation according to the first embodiment of the present invention It is a diagram for the purpose of illustrating a case of rotational movement, and FIG. 13 is a diagram for explaining an example of creating a dynamic safe zone according to the first embodiment of the present invention, and shows a case in which rotational movement and straight movement are simultaneously generated.
  • the dynamically created safety zone cannot be smaller than the shape of the mobile robot, that is, the default safety zone.
  • the mobile robot when moving simultaneously in the x-axis and y-axis, the mobile robot travels diagonally, and a safety zone is dynamically created so that the mobile robot does not collide with obstacles even when running diagonally.
  • the shape of the dynamically generated safety zone is changed according to the rotational direction of the mobile robot, and when the mobile robot rotates to the right, the upper right and upper left, which are at risk of collision, are lengthened, , when the mobile robot rotates to the left, the upper left and lower right corners become longer.
  • the rotational movement and the straight movement of the mobile robot are simultaneously generated, and even when the forward speed and the rotational speed exist together, a safety zone is created in which the rotation value is added based on the value obtained through the future predicted position of the mobile robot. , the corresponding safe zone is automatically determined and changed according to the speed and direction.
  • FIG. 14 is a flowchart illustrating a method for generating a dynamic safe zone of a mobile robot according to the first embodiment of the present invention.
  • the apparatus 100 for generating a dynamic safe zone acquires a moving direction and a moving speed of the mobile robot ( S110 ).
  • the dynamic safe zone generating apparatus 100 dynamically creates a safety zone for the mobile robot based on at least one of shape information of the mobile robot, a moving direction of the mobile robot, and a moving speed of the mobile robot ( S130 ).
  • the dynamic safety zone generating apparatus 100 may dynamically create a safety zone for the mobile robot in a preset cycle unit.
  • the apparatus 100 for generating a dynamic safe zone may dynamically create a safety zone for the mobile robot when at least one of a moving direction and a moving speed of the mobile robot is changed.
  • the apparatus 100 for generating a dynamic safe zone may acquire a future predicted position of the mobile robot based on the moving direction and the moving speed of the mobile robot. That is, the dynamic safe zone generating apparatus 100 obtains the movement speed in the x-axis direction and the movement speed in the y-axis direction based on the movement direction and movement speed of the mobile robot, and based on the movement speed in the x-axis direction, the mobile robot obtains the predicted future x-axis position of location can be obtained.
  • the apparatus 100 for generating a dynamic safe zone may dynamically create a safety zone for the mobile robot based on shape information of the mobile robot and a future predicted position of the mobile robot.
  • the dynamic safety zone generating apparatus 100 acquires a default safety zone based on the shape information of the mobile robot, and dynamically creates a safety zone for the mobile robot based on the default safety zone and the future expected position of the mobile robot. can be created with At this time, the dynamic safe zone generating apparatus 100 obtains the front, rear, left and right distances based on the center point of the mobile robot based on the shape information of the mobile robot, and consists of four vertices based on the center point and the front and rear left and right distances of the mobile robot. A default safe zone can be obtained.
  • the dynamic safety zone generating apparatus 100 may dynamically create a safety zone for the mobile robot by varying the front, rear, left, and right distances according to the default safety zone, based on the predicted future position of the mobile robot.
  • the dynamic safety zone generating device 100 obtains a plurality of sub safety zones by varying the front, rear, left, and right distances according to the default safety zone multiple times based on the current position of the mobile robot and the predicted future position of the mobile robot It is possible to dynamically create safe zones for mobile robots based on sub-safe zones.
  • FIGS. 15 to 18 An apparatus and method for modularizing a dual system configuration of a mobile robot, which is a second embodiment of a functional safety system for a robot according to the present invention, will be described in detail with reference to FIGS. 15 to 18 .
  • 15 is a block diagram illustrating an apparatus for modularizing a dual system configuration of a mobile robot according to a second embodiment of the present invention.
  • a modularization device (hereinafter referred to as a 'modular device') 200 for a dual system configuration of a mobile robot according to a second embodiment of the present invention is pl-d required for functional safety of the robot.
  • performance level d the entire system architecture can be duplicated.
  • the present invention may be used in household cleaning robots, cleaning robots for public buildings, logistics robots, service robots, and industrial robots.
  • each stage must be duplicated.
  • the input stage is redundant with “LiDAR sensor A(I1)” and “LiDAR sensor B(I2)”
  • the logic stage is "LiDAR Logic board A(L1)” and It is redundant with “LiDAR Logic board B(L2)”
  • the output stage is redundant with "O1” and "O2", and if the result is "0 or 2", it can be stopped.
  • the present invention relates to a method of performing such redundancy in terms of the overall system configuration.
  • the modular apparatus 200 may include an input unit 210 , a logic unit 230 , an output unit 250 , and a control unit 270 .
  • the input unit 210 may be equipped with a plurality of sensors 211 .
  • the senor 211 may be one of a LiDAR sensor, an encoder sensor, and a Cliff sensor.
  • the logic unit 230 may be equipped with a plurality of logic boards 231 corresponding to each of the plurality of sensors 211 mounted on the input unit 210 .
  • the logic board 231 may be one of a lidar (LiDAR) board, an encoder (Encoder) board, and other (ETC) boards.
  • LiDAR lidar
  • Encoder encoder
  • ETC other
  • the output unit 250 may transmit an output value to the outside by using a redundancy parameter based on the outputs of the plurality of logic boards 231 mounted on the logic unit 230 .
  • the controller 270 may change the value of the duplication parameter based on the duplication target information input by the user.
  • the redundancy parameter includes logic board identification information that is unique information for identifying the logic board 231 , logic board type information that is information that can identify the type of the logic board 231 , and the sensor 211 . It may include sensor location information, which is information capable of identifying a location.
  • FIG. 16 is a block diagram for explaining the detailed configuration of the redundant system configuration modular device shown in FIG. 15 .
  • a plurality of sensors A 211-a of “type A” are mounted, and sensors B (211-b) of “type B” are mounted.
  • a plurality of sensors may be mounted, and a plurality of sensors C 211 - c of “type C” may be mounted.
  • “Type A” may indicate a LiDAR sensor
  • “Type B” may indicate an encoder sensor
  • “Type C” may indicate a Cliff sensor.
  • the logic board A 231-a of “type A” corresponds to each of the plurality of sensors A 211-a mounted on the input unit 210 and is mounted in plurality.
  • a plurality of logic board B (231-b) of “Type B” is mounted corresponding to each of a plurality of sensors B (211-b) mounted on the input unit 210, and a plurality of logic board C (231) of “Type C” is mounted.
  • -c) may correspond to each of the plurality of sensors C 211 - c mounted on the input unit 210 and may be mounted in plurality.
  • “Type A” may indicate a LiDAR board
  • “Type B” may indicate an Encoder board
  • “Type C” may indicate an ETC board.
  • a plurality of logic boards 231 mounted on the logic unit 230 that is, a plurality of logic boards A (231-a), a plurality of logic boards B (231-b), and a plurality of logic boards C (231-c).
  • a plurality of logic boards 231 mounted on the logic unit 230 that is, a plurality of logic boards A (231-a), a plurality of logic boards B (231-b), and a plurality of logic boards C (231-c).
  • a plurality of logic boards 231 mounted on the logic unit 230 that is, a plurality of logic boards A (231-a), a plurality of logic boards B (231-b), and a plurality of logic boards C (231-c).
  • the controller 270 of the modular device 200 may change the value of the redundancy parameter based on the redundancy target information in units of the redundancy target set.
  • the redundancy target information may include dualization target logic board identification information and sensor information corresponding to the redundant target logic board.
  • control unit 270 is configured to identify a first pair of logic board identification information, a first pair of logic board type information, a first pair of sensor location information, and a second pair of logic board identification information, based on the redundancy target information.
  • the redundancy target can be dynamically changed.
  • the output unit 250 includes two OR gates 251 and 252, based on the outputs of the plurality of logic boards 231, using a redundancy parameter for each of the two OR gates 251 and 252 The input is set, and the output values of the two OR gates 251 and 252 can be passed to the outside.
  • the controller 270 controls the output unit 250 based on the redundancy target information to set the output of the logic board corresponding to the first pair of the redundancy target set to be input to the first OR gate, and the redundancy target set The output of the logic board corresponding to the second pair of may be set to be input to the second OR gate.
  • sensor A 211-a which is two “LiDAR sensors”
  • sensor B 211-b which is two “Encoder sensors”
  • a sensor that is two “Cliff sensors” C (211-c) is installed in the input unit 210, two "LiDAR (LiDAR) boards” corresponding to each of the two sensors A (211-a) logic board A (231-a), two Logic board B 231-b, which is two “Encoder boards” corresponding to each of Sensor B 211-b, and two “Other (ETC)” corresponding to each of the two Sensors C (211-c)
  • the logic board C (231-c) which is "the board” is installed, the following redundancy target information may be input.
  • Redundancy target set 1 identification information of each of the two logic boards A (231-a), the number of sensors 211 connected to each of the two logic boards A (231-a), identification information of the sensors 211, etc.
  • Redundancy target set 2 identification information of each of the two logic boards B (231-b), the number of sensors 211 connected to each of the two logic boards B (231-b), identification information of the sensors 211, etc.
  • Redundancy target set 3 identification information of each of the two logic boards C (231-c), the number of sensors 211 connected to each of the two logic boards C (231-c), identification information of the sensors 210, etc.
  • control unit 270 of the modular apparatus 200 can dynamically change the duplication target by changing the value of the duplication parameter in units of the duplication subject set as follows based on the above duplication subject information.
  • Redundancy target set 1 Among the two logic boards A (231-a), one logic board A (231-a) is used as the first pair, and the other logic board A (231-a) is used as the second pair , set two logic boards A (231-a) as redundancy target by changing the value of the relevant redundancy parameter
  • Redundancy target set 2 Among the two logic boards B (231-b), one logic board B (231-b) is used as the first pair, and the other logic board B (231-b) is used as the second pair , set the two logic boards B (231-b) as the redundancy target by changing the value of the relevant redundancy parameter
  • Redundancy target set 3 One logic board C(231-c) of the two logic boards C(231-c) is used as the first pair, and the other logic board C(231-c) is used as the second pair , set two logic boards C(231-c) as redundancy target by changing the value of the relevant redundancy parameter
  • control unit 270 is configured as a first pair of one logic board A 231-a and two logic board B 231-b set as a first pair among the two logic board A 231-a. so that the output of one logic board C (231-c) set as the first pair among one logic board B (231-b) and two logic boards C (231-c) is input to the first OR gate 251 can be set.
  • control unit 270 is configured as a second pair of one logic board A (231-a) and two logic boards B (231-b) set as a second pair among the two logic boards A (231-a) so that the output of one logic board C (231-c) set as a second pair among one logic board B (231-b) and two logic boards C (231-c) is input to the second OR gate 252 can be set.
  • the present invention can implement duplication of the output stage.
  • 17 is a view for explaining an example of implementation of a modularizing device for configuring a redundant system of a mobile robot according to a second embodiment of the present invention.
  • each logic board (LB) 231 ) consists of one communication network, so that modules of the logic board (LB) 231 can be removed or added according to the number of sensors 211 required in the duplex configuration.
  • the output stage is composed of two OR gates 251 and 252 so that data can be flexibly received regardless of the number of duplicated data, so that the module of the logic board (LB) 231 is removed or newly added Even if it is done, a redundant system can be implemented without changing the overall system configuration.
  • the present invention configures a logic board (LB) 231 for each sensor 211 to configure a module unit redundancy system, and a redundant output board (output board) ( By duplicating the output stage using two OR gates), whenever the number of sensors 211 is changed, the pl-d configuration is possible without significant change in the overall redundant system configuration.
  • LB logic board
  • output board redundant output board
  • the logic stage can be largely divided into three types: a LiDAR board, an encoder board, and an ETC board.
  • the number of LiDAR sensors is 2 to 4
  • the number of encoder sensors is 2 to 4
  • the number of Cliff sensors is to be dynamically changed from 4EA to 8EA.
  • the software in the board may change the number of sensors 211 without a separate change, and the change may be transmitted to the board in the form of parameter data by the user. That is, the user can transmit the change to the corresponding board through the input of the redundancy target information.
  • the board When the user inputs redundancy target information, such as the ID number of the logic board 231 to be duplicated, the number of sensors 211, etc., the board automatically calculates the following redundancy parameter values based on the redundancy target information through an internal algorithm. can be changed to
  • Type of logic board 231 LB_PAIR_EXTRINSIC_TYPE_1
  • Type of logic board 231 LB_PAIR_EXTRINSIC_TYPE_2
  • the target to be duplicated can be dynamically changed in the internal board. That is, in the present invention, if the number of sensors to be changed is changed on a system-by-system basis and then only the value of the redundancy parameter is changed accordingly, the redundancy target can be automatically changed.
  • FIG. 18 is a flowchart for explaining a method for modularizing a redundant system configuration of a mobile robot according to a second embodiment of the present invention.
  • duplication target information may be input by a user ( S210 ).
  • the redundancy target information may include dualization target logic board identification information and sensor information corresponding to the redundant target logic board.
  • the modularization apparatus 200 may change the value of the redundancy parameter based on the redundancy target information (S230).
  • the redundancy parameter includes logic board identification information that is unique information for identifying the logic board 231 , logic board type information that is information that can identify the type of the logic board 231 , and the sensor 211 . It may include sensor location information, which is information capable of identifying a location.
  • the modularization apparatus 200 may change the value of the redundancy parameter based on the redundancy target information based on the redundancy target set as a unit.
  • the modularization device 200 is based on the redundancy target information, the first pair of logic board identification information, the first pair of logic board type information, the first pair of sensor location information, the second pair of logic boards
  • the redundancy target can be dynamically changed.
  • the output unit 250 of the modular device 200 includes two OR gates 251 and 252, and the two OR gates 251 using a redundancy parameter based on the outputs of the plurality of logic boards 231. and 252) are set, and output values of the two OR gates 251 and 252 may be transmitted to the outside.
  • the modularization device 200 controls the output unit 250 based on the redundancy target information to set the output of the logic board corresponding to the first pair of the redundancy target set to be input to the first OR gate, and the redundancy target The output of the logic board corresponding to the second pair of the set may be set to be input to the second OR gate.
  • a sensor duplication apparatus and method for a mobile robot which is a third embodiment of a functional safety system for a robot according to the present invention, will be described in detail with reference to FIGS. 19 to 25 .
  • FIG. 19 is a block diagram for explaining a sensor duplication apparatus for a mobile robot according to a third embodiment of the present invention
  • FIG. 20 is a view for explaining a sensor duplication process according to a third embodiment of the present invention.
  • a sensor duplication device (hereinafter referred to as a 'sensor duplication device') 300 of a mobile robot according to a third embodiment of the present invention is pl-d ( In order to satisfy performance level d), the sensor can be duplicated using the obstacle information detected through the sensor.
  • the present invention may be used in household cleaning robots, cleaning robots for public buildings, logistics robots, service robots, and industrial robots.
  • each stage must be duplicated.
  • the input stage is duplicated with "LiDAR sensor A(I1)” and “LiDAR sensor B(I2)”
  • the logic stage is "LiDAR Logic board A(L1)” and It is redundant with “LiDAR Logic board B(L2)”
  • the output terminal is redundant with "O1” and "O2”, and if the result is "0 or 2", it can be stopped.
  • the present invention achieves such redundancy by using an obstacle existing in a safety zone through two LiDAR sensors constituting a logic stage rather than from a system architecture point of view. ) about how to perform sensor redundancy.
  • the sensor duplication apparatus 300 may include an input unit 310 , a logic unit 330 , an output unit 350 , and a control unit 370 .
  • the input unit 310 may be equipped with a plurality of sensors 311 .
  • the senor may be a LiDAR sensor or the like.
  • the logic unit 330 may be equipped with a plurality of logic boards corresponding to each of the plurality of sensors 311 mounted on the input unit 310 .
  • the logic board may be a LiDAR board or the like.
  • the output unit 350 may transmit an output value to the outside based on the outputs of the plurality of logic boards 331 mounted on the logic unit 330 .
  • the controller 370 may perform duplication of the sensors in units of a preset duplication area based on obstacle information detected through each of the plurality of sensors 311 .
  • the redundancy area represents a spatial area that is duplicated using obstacle information detected through the two sensors 311 in order to satisfy pl-d (performance level d) required for functional safety.
  • the controller 370 may perform duplication of the two sensors 311 based on obstacle information detected through the two sensors 311 corresponding to the duplication area.
  • the controller 370 uses the obstacle information detected by each of the two sensors 311 based on the dynamic safety zone generated by each of the two sensors 311 corresponding to the redundant area. Redundancy of the two sensors 311 may be performed.
  • the dynamic safety zone may dynamically create a safety zone based on the movement direction and movement speed of the robot equipped with the sensor duplication device 300, and the details are the same as in the first embodiment according to the present invention described above. .
  • the controller 370 may determine that the duplication of the two sensors 311 has been successful. On the other hand, if the obstacle information detected through the two sensors 311 corresponding to the redundancy area does not match, the controller 370 may determine that the duplication of the two sensors 311 has failed.
  • control unit 370 may check whether the obstacle information detected through the two sensors 311 corresponding to the redundancy area coincides with each other using preset sensor error information.
  • obstacle information is obtained by detecting an obstacle in the dynamic safety zone created by “sensor A”, and the “sensor A” Obstacle information can be obtained by detecting an obstacle in the dynamic safety zone created in B". Then, by using the obstacle information detected by the “sensor A” and the obstacle information detected by the “sensor B”, the duplication of the “sensor A” and the “sensor B” may be performed. That is, it is possible to check whether the obstacle information detected by the “sensor A” matches the obstacle information detected by the “sensor B”.
  • the obstacle according to the obstacle information is located at the boundary point of the overlapping areas adjacent to each other, it is checked whether the obstacle information detected by “Sensor A” matches the obstacle information detected by “Sensor B” using the sensor error information. can As a result of the check, if they match, it may be determined that the duplication of "sensor A” and “sensor B” is successful, and if they do not match, it may be determined that the duplication of "sensor A” and "sensor B” has failed.
  • the logic board 331 and the control unit 370 are implemented in an integral form, so that the logic board 331 may perform the operation of the control unit 370 .
  • the logic board 331 may perform duplication of the two sensors 311 based on obstacle information detected through the two sensors 311 corresponding to the duplication area.
  • FIG. 21 is a block diagram for explaining an input unit and a logic unit of an example of the sensor duplication device of the mobile robot according to the third embodiment of the present invention
  • FIG. 22 is a duplicate area of the sensor duplication device shown in FIG.
  • FIG. 23 is a diagram for explaining a redundancy area according to an obstacle of the sensor redundancy device shown in FIG. 21 .
  • a first sensor 311-a is mounted on the front left side of the robot, and a second sensor (311-a) is mounted on the front right side of the robot ( 311-b) is mounted, the third sensor 311-c may be mounted on the rear left side of the robot, and the fourth sensor 311-d may be mounted on the rear right side of the robot.
  • the logic unit 330 according to an example of the sensor duplication device 300 includes a first logic board 331-a corresponding to the first sensor 311-a and a second sensor 311-b corresponding to the first logic board 331-a.
  • the second logic board 331-b, the third logic board 331-c corresponding to the third sensor 311-c, and the fourth logic board 331-d corresponding to the fourth sensor 311-d ) can be installed.
  • the redundancy area corresponds to a first redundancy area to which the first sensor 311-a and the second sensor 311-b correspond, and a first redundancy area to which the first sensor 311-a and the third sensor 311-c correspond.
  • the second redundancy area, the third redundancy area to which the second sensor 311-b and the fourth sensor 311-d correspond, and the third sensor 311-c and the fourth sensor 311-d to correspond It may include a fourth redundancy region.
  • the sensor ( 311) can be implemented.
  • a "first redundancy area” that is a duplication area corresponding to "obstacle A” is identified, and corresponding to the "first redundancy area”
  • Sensor duplication in the "first redundancy area” can be performed using obstacle information detected from each of the two sensors “first sensor 311-a” and “second sensor 311-b” .
  • a "second redundancy area” that is a redundancy area corresponding to "obstacle B” is identified, and a “first sensor 311-a” that is two sensors corresponding to the “second redundancy area”
  • Sensor duplication in the “second duplication area” may be performed using obstacle information detected from each of " and "third sensor 311-c".
  • the "first redundancy area” that is the duplication area corresponding to "obstacle A” is identified, and corresponds to the "first duplication area”
  • Sensor duplication in the "first redundancy area” can be performed using obstacle information detected from each of the two sensors “first sensor 311-a” and “second sensor 311-b” .
  • a "third redundancy area” that is a redundancy area corresponding to "obstacle B” is identified, and a “second sensor 311-b” which is two sensors corresponding to “third redundancy area” Sensor duplication in the "third redundancy area” may be performed using obstacle information detected from each of " and "fourth sensor 311-d”.
  • a "fourth duplication area” that is a duplication area corresponding to "obstacle A” is identified, and corresponding to the "fourth duplication area”
  • Sensor duplication in the "fourth redundancy area” can be performed using the obstacle information detected from each of the two sensors “third sensor 311-c” and “fourth sensor 311-d” .
  • "obstacle A” is located at the boundary point of the overlapping areas adjacent to each other (the third redundancy area and the fourth redundancy area). It may be checked whether the obstacle information matches the obstacle information detected by the “fourth sensor 311-d”.
  • a "third redundancy area” that is a redundancy area corresponding to "obstacle B” is identified, and a “second sensor 311-b” which is two sensors corresponding to “third redundancy area” Sensor duplication in the "third redundancy area” may be performed using obstacle information detected from each of " and "fourth sensor 311-d”.
  • a "second redundancy area” that is a redundancy area corresponding to "obstacle B” is identified, and a “first sensor 311-a” that is two sensors corresponding to the “second redundancy area”
  • Sensor duplication in the “second duplication area” may be performed using obstacle information detected from each of " and "third sensor 311-c".
  • 24 is a view for explaining a duplication area of another example of the sensor duplication apparatus of the mobile robot according to the third embodiment of the present invention.
  • a first sensor 311 -a is mounted on one left side of the robot, and a second sensor 311 -a is mounted on one side right side of the robot. b) can be fitted.
  • the logic unit 330 corresponds to the first logic board 331-a and the second sensor 311-b corresponding to the first sensor 311-a.
  • a second logic board 331-b may be mounted.
  • the redundancy region may correspond to the first sensor 311 -a and the second sensor 311 -b .
  • redundancy of the sensor 311 can be implemented in a specific area among the omnidirectional areas of the robot.
  • the front area of the robot may be configured as a redundant area through the first sensor 311 -a and the second sensor 311 -b .
  • the left area of the robot is composed of a first single area sensed only through the first sensor 311-a
  • the right area of the robot is composed of a second single area sensed only through the second sensor 311-b.
  • the rear area of the robot may be configured as an area not detected because the sensor 311 does not exist.
  • 25 is a flowchart illustrating a sensor duplication method of a mobile robot according to a third embodiment of the present invention.
  • the sensor duplication apparatus 300 may detect obstacle information through each of the plurality of sensors 311 ( S310 ).
  • the sensor duplication device 310 may detect obstacle information from the sensor 311 based on the dynamic safety zone created in the sensor 311 .
  • the dynamic safety zone may dynamically create a safety zone based on the movement direction and movement speed of the robot equipped with the sensor duplication device 300 .
  • the sensor duplication apparatus 300 may perform duplication of the sensors 311 in units of a preset duplication area based on obstacle information detected through each of the plurality of sensors 311 ( S330 ).
  • the sensor duplication apparatus 300 may perform duplication of the two sensors 311 based on obstacle information detected through the two sensors 311 corresponding to the duplication area.
  • the sensor duplication apparatus 300 may determine that duplication of the two sensors 311 is successful. On the other hand, if the obstacle information detected through the two sensors 311 corresponding to the redundancy area does not match, the sensor duplication apparatus 300 may determine that duplication of the two sensors 311 has failed.
  • the sensor duplication apparatus 300 may check whether the obstacle information detected through the two sensors 311 corresponding to the duplication area coincides with the preset sensor error information.
  • the present invention is not necessarily limited to this embodiment. That is, within the scope of the object of the present invention, all the components may operate by selectively combining one or more.
  • all of the components may be implemented as one independent hardware, but a part or all of each component is selectively combined to perform some or all of the functions of the combined hardware in one or a plurality of hardware program modules It may be implemented as a computer program having
  • such a computer program is stored in a computer readable media such as a USB memory, a CD disk, a flash memory, etc., read and executed by a computer, thereby implementing an embodiment of the present invention.
  • the recording medium of the computer program may include a magnetic recording medium, an optical recording medium, and the like.
  • control unit 370 control unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Optics & Photonics (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명의 바람직한 실시예에 따른 로봇의 기능 안전 시스템은, 장애물이 있는지 여부를 감지하는 영역인 안전 구역(safety zone)을 생성하고, 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 모듈을 이중화할 수 있다.

Description

로봇의 기능 안전 시스템
본 발명은 로봇의 기능 안전 시스템에 관한 것으로서, 더욱 상세하게는 장애물이 있는지 여부를 감지하는 영역인 안전 구역(safety zone)을 생성하는, 이동 로봇의 동적 안전 구역 생성 장치 및 방법에 관한 것이다.
또한, 본 발명은 로봇의 기능 안전 시스템에 관한 것으로서, 더욱 상세하게는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 모듈을 이중화하는, 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법에 관한 것이다.
또한, 본 발명은 로봇의 기능 안전 시스템에 관한 것으로서, 더욱 상세하게는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 모듈을 이중화하는, 이동 로봇의 센서 이중화 장치 및 방법에 관한 것이다.
도 1은 종래의 안전 구역 생성 방식을 설명하기 위한 도면이다.
종래 로봇의 동적 안전 구역(dynamic safety zone)의 생성은 사용자가 지정한 속도 마다 정적인(static) 구역의 모양을 입력받아 저장한 뒤에, 해당 속도에 도달하면 사용자가 저장한 구역으로 변경되어 해당 구역 안에 장애물이 있는지를 검사하고, 멈추는 방식으로 사용자가 지정한 속도에 따른 구역의 개수와 모양에 따라 안전이 보장되는 방식이다. 로봇의 주행 방향이 다변화될 수록 속도에 따른 구역의 개수도 주행 방향만큼 늘어나야 하므로, 안전 구역을 사용자가 직접 입력하는 방식은 구역 개수에 따른 한계가 존재한다. 예컨대, 동적 안전 구역을 사용하는 SICK사의 Performance Level d(PL-d) 라이다(Light Detection And Ranging, LiDAR)의 경우 안전 구역의 개수에 제한을 두고 있으며, 저렴한 모델의 경우 최대 6개의 구역을, 고급 모델의 경우 최대 32개의 구역을 입력할 수 있다. 한가지 예로 다양한 방향이 요구되는 메카넘 휠(Mecanum wheel)을 사용하는 로봇의 경우 x축과 y축 모두 주행이 가능하고, 회전하면서 주행도 가능하기 때문에 다이나믹한 주행에서 속도와 방향에 따른 적절한 안전 구역을 사용자가 지정하기 어려우며, 속도를 세분화하여 구역 사이의 밀도를 높이면 높일수록 사용자가 입력하여야 하는 구역의 개수도 추가적으로 늘어나게 되고, 구역의 개수가 늘어날수록 유저 폴트(user fault)로 인한 위험도 높아지게 된다. 즉, 도 1에 도시된 바와 같이, 종래의 안전 구역 생성 방식은 사용자가 속도와 안전 구역을 매칭하여 저장해 놓은 상태에서 해당 조건이 되면 안전 구역이 변경되는 방식으로, 안전 구역의 개수가 한정되어 있으며, 안전 구역 사이의 밀도를 높이면 높일수록 안전 구역의 개수도 늘어나고, 사용자에 의한 유저 폴트(user fault)의 위험성도 증가하게 된다.
도 2는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d) 카테고리 3에 대한 이중화 개념을 설명하기 위한 도면이다.
그리고, 로봇의 안전성을 보장하기 위해 기능 안전(functional safety)과 관련된 성능 레벨(performance level, pl)에서 모듈의 이중화를 요구하고 있다. 그러나, 종래의 방법은 기존의 센서가 제거되거나 새로운 센서가 추가되는 경우, 로봇의 성능 레벨(pl)을 만족시키기 위해 변경 내용에 따라 시스템의 구성을 변경하여야 하는 문제가 있다.
그리고, 로봇의 안전성을 보장하기 위해 기능 안전(functional safety)과 관련된 성능 레벨(performance level, pl)에서 모듈의 이중화를 요구하고 있다. 성능 레벨 d(pl-d) 인증을 받은 라이다(LiDAR) 센서를 이용하면 간단하게 이중화 시스템을 구현할 수 있지만, 성능 레벨 d(pl-d) 인증을 받은 라이다(LiDAR) 센서의 가격이 비싸 이중화 시스템의 구현에 많은 비용이 소요되는 문제가 있고, 해당 라이다(LiDAR) 센서를 제조하는 제조 업체가 제공하는 기능만을 사용할 수 있어 유연한 기능 구현이 어려운 문제가 있다.
즉, 로봇의 기능 안전에서 요구하는 pl-d를 만족하기 위해서는 도 2에 도시된 바와 같이 입력(Input, I)단, 로직(Logic, L)단 및 출력(Output, O)단의 3개의 모듈단이 각각 이중화되어야 한다. 입력단은 "라이다(LiDAR) 센서 A(I1)"와 "라이다(LiDAR) 센서 B(I2)"로 이중화되어 있고, 로직단은 "라이다 로직(LiDAR Logic) 보드 A(L1)"와 "라이다 로직(LiDAR Logic) 보드 B(L2)"로 이중화되어 있으며, 출력단은 "O1"과 "O2"로 이중화되어 있고 그 결과가 "0 또는 2"이면 정지(stop)할 수 있다.
본 발명이 이루고자 하는 목적은, 이동 로봇의 기능 안전(functional safety)에 필요한 안전 구역(safety zone)을 이동 로봇의 외형과 속도에 따라 실시간으로 가변하여 생성하는, 이동 로봇의 동적 안전 구역 생성 장치 및 방법을 제공하는 데 있다.
또한, 본 발명이 이루고자 하는 목적은, 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 전체 시스템 구성(system architecture)을 이중화하는, 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법을 제공하는 데 있다.
또한, 본 발명이 이루고자 하는 목적은, 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 센서를 통해 검출된 장애물 정보를 이용하여 센서를 이중화하는, 이동 로봇의 센서 이중화 장치 및 방법을 제공하는 데 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치는, 이동 로봇의 이동 방향과 이동 속도를 획득하는 정보 획득부; 및 상기 이동 로봇의 형상 정보, 상기 정보 획득부를 통해 획득한 상기 이동 로봇의 이동 방향 및 상기 정보 획득부를 통해 획득한 상기 이동 로봇의 이동 속도 중 적어도 하나를 기반으로 상기 이동 로봇에 대한 안전 구역(safety zone)을 동적으로 생성하는 안전 구역 생성부;를 포함한다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 이동 방향과 이동 속도를 기반으로 상기 이동 로봇의 미래 예상 위치를 획득하고, 상기 이동 로봇의 형상 정보 및 상기 이동 로봇의 미래 예상 위치를 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 이동 방향과 이동 속도를 기반으로 x축 방향의 이동 속도와 y축 방향의 이동 속도를 획득하고, x축 방향의 이동 속도를 기반으로 미래 예상 x축 위치를 획득하며, y축 방향의 이동 속도를 기반으로 미래 예상 y축 위치를 획득하고, 미래 예상 x축 위치와 미래 예상 y축 위치를 기반으로 상기 이동 로봇의 미래 예상 위치를 획득할 수 있다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 형상 정보를 기반으로 디폴트(default) 안전 구역을 획득하고, 디폴트 안전 구역과 상기 이동 로봇의 미래 예상 위치를 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 형상 정보를 기반으로 상기 이동 로봇의 중심점을 기준으로 하는 전후좌우 거리를 획득하고, 상기 이동 로봇의 중심점 및 전후좌우 거리를 기반으로 4개의 꼭지점으로 이루어지는 디폴트 안전 구역을 획득할 수 있다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 가변하여 상기 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
여기서, 상기 안전 구역 생성부는, 상기 이동 로봇의 현재 위치와 상기 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 복수회 가변하여 복수개의 서브 안전 구역을 획득하고, 복수개의 서브 안전 구역을 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 이동 로봇의 센서 이중화 장치는, 복수개의 센서가 장착되는 입력부; 상기 입력부에 장착된 상기 복수개의 센서 각각에 대응되는 복수개의 로직 보드(logic board)가 장착되는 로직부; 상기 로직부에 장착된 상기 복수개의 로직 보드의 출력을 기반으로 출력값을 외부로 전달하는 출력부; 및 상기 복수개의 센서 각각을 통해 검출된 장애물 정보를 기반으로 미리 설정된 이중화 영역을 단위로 센서의 이중화를 수행하는 제어부;를 포함한다.
여기서, 상기 제어부는, 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보를 기반으로 2개의 센서의 이중화를 수행할 수 있다.
여기서, 상기 제어부는, 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보가 일치하면 2개의 센서의 이중화가 성공한 것으로 판단하고, 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보가 일치하지 않으면 2개의 센서의 이중화가 실패한 것으로 판단할 수 있다.
여기서, 상기 제어부는, 미리 설정된 센서 오차 정보를 이용하여 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보의 일치 여부를 확인할 수 있다.
여기서, 상기 제어부는, 상기 이중화 영역에 대응되는 2개의 센서 각각에서 생성된 동적 안전 구역(safety zone)을 기반으로 2개의 센서 각각에서 검출된 장애물 정보를 이용하여 2개의 센서의 이중화를 수행할 수 있다.
상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치는, 복수개의 센서가 장착되는 입력부; 상기 입력부에 장착된 상기 복수개의 센서 각각에 대응되는 복수개의 로직 보드(logic board)가 장착되는 로직부; 상기 로직부에 장착된 상기 복수개의 로직 보드의 출력을 기반으로 이중화 파라미터를 이용하여 출력값을 외부로 전달하는 출력부; 및 로직 보드 식별 정보, 로직 보드 유형 정보 및 센서 위치 정보를 포함하는 상기 이중화 파라미터의 값을 사용자에 의해 입력된 이중화 대상 정보를 기반으로 변경하는 제어부;를 포함한다.
본 발명의 바람직한 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치 및 방법에 의하면, 이동 로봇의 형상 정보와 방향/속도 정보를 통해 사용자에 의한 안전 구역의 입력 없이 속도/방향에 따라 이동 로봇의 예상 위치를 계산하고 자동으로 동적 안전 구역(dynamic safety zone)을 생성함으로써, 디프 휠(diff wheel)과 메카넘 휠(Mecanum wheel) 등과 같은 다양한 휠이 장착된 이동 로봇에 모두 사용할 수 있다. 그리고, 사용자의 직접적인 안전 구역의 입력없이 모든 방향에 대한 안전 구역이 자동으로 생성되기 때문에, 안전 구역 사이의 밀도와 전방위에 대한 안전 기능을 수행할 수 있으며, 사용자 입력에 의한 유저 폴트(user fault)를 크게 줄일 수 있다.
또한, 본 발명의 바람직한 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법에 의하면, 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 전체 시스템 구성(system architecture)을 이중화함으로써, 전체 시스템 구성을 변경하지 않아도 센서를 제거하거나 새로운 센서를 추가할 수 있다.
또한, 본 발명의 바람직한 실시예에 따른 이동 로봇의 센서 이중화 장치 및 방법에 의하면, 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 센서를 통해 검출된 장애물 정보를 이용하여 센서를 이중화함으로써, pl-d 인증을 받지 못하여 가격이 저렴한 일반 라이다(LiDAR) 센서를 이용하여 이중화 시스템을 구현할 수 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 종래의 안전 구역 생성 방식을 설명하기 위한 도면이다.
도 2는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d) 카테고리 3에 대한 이중화 개념을 설명하기 위한 도면이다.
도 3은 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치를 설명하기 위한 블록도이다.
도 4는 본 발명의 제1 실시예에 따른 동적 안전 구역 생성 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 제1 실시예에 따른 디폴트 안전 구역 획득 동작을 설명하기 위한 도면이다.
도 6은 본 발명의 제1 실시예에 따른 미래 예상 위치 획득 동작을 설명하기 위한 도면이다.
도 7은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성 동작을 설명하기 위한 도면이다.
도 8은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 하나의 축 상에서의 직진 이동의 경우를 나타낸다.
도 9는 본 발명의 제1 실시예에 따른 대각선 이동의 동적 안전 구역 생성 동작을 설명하기 위한 도면이다.
도 10은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, x축과 y축 상에서의 대각선 이동의 경우를 나타낸다.
도 11은 본 발명의 제1 실시예에 따른 회전 이동의 동적 안전 구역 생성 동작을 설명하기 위한 도면이다.
도 12는 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 회전 이동의 경우를 나타낸다.
도 13은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 회전 이동과 직진 이동이 동시에 발생되는 경우를 나타낸다.
도 14는 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 방법을 설명하기 위한 흐름도이다.
도 15는 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치를 설명하기 위한 블록도이다.
도 16은 도 15에 도시한 이중화 시스템 구성 모듈화 장치의 세부 구성을 설명하기 위한 블록도이다.
도 17은 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치의 구현 일례를 설명하기 위한 도면이다.
도 18은 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 방법을 설명하기 위한 흐름도이다.
도 19는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치를 설명하기 위한 블록도이다.
도 20은 본 발명의 제3 실시예에 따른 센서의 이중화 과정을 설명하기 위한 도면이다.
도 21은 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 일례의 입력부와 로직부를 설명하기 위한 블록도이다.
도 22는 도 21에 도시한 센서 이중화 장치의 이중화 영역을 설명하기 위한 도면이다.
도 23은 도 21에 도시한 센서 이중화 장치의 장애물에 따른 이중화 영역을 설명하기 위한 도면이다.
도 24는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 다른 예의 이중화 영역을 설명하기 위한 도면이다.
도 25는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 방법을 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서 "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
본 명세서에서 각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 명세서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다"등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
또한, 본 명세서에 기재된 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터 구조들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다.
이하에서 첨부한 도면을 참조하여 본 발명에 따른 로봇의 기능 안전 시스템의 바람직한 실시예에 대해 상세하게 설명한다.
본 발명에 따른 로봇의 기능 안전 시스템은 안전 구역(safety zone)을 동적으로 생성하고, pl-d(performance level d)를 위한 시스템 모듈과 라이다(LiDAR) 센서를 이중화할 수 있다.
< 제1 실시예 : 이동 로봇의 동적 안전 구역 생성 장치 및 방법 >
도 3 내지 도 14를 참조하여 본 발명에 따른 로봇의 기능 안전 시스템의 제1 실시예인 이동 로봇의 동적 안전 구역 생성 장치 및 방법에 대해 상세하게 설명한다.
먼저, 도 3 내지 도 7을 참조하여 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치에 대하여 설명한다.
도 3은 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치를 설명하기 위한 블록도이고, 도 4는 본 발명의 제1 실시예에 따른 동적 안전 구역 생성 과정을 설명하기 위한 도면이며, 도 5는 본 발명의 제1 실시예에 따른 디폴트 안전 구역 획득 동작을 설명하기 위한 도면이고, 도 6은 본 발명의 제1 실시예에 따른 미래 예상 위치 획득 동작을 설명하기 위한 도면이며, 도 7은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성 동작을 설명하기 위한 도면이다.
도 3을 참조하면, 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 장치(이하 '동적 안전 구역 생성 장치'라 한다)(100)는 이동 로봇의 기능 안전(functional safety)에 필요한 안전 구역(safety zone)을 이동 로봇의 외형과 속도에 따라 실시간으로 가변하여 생성한다.
여기서, 본 발명은 가정용 청소 로봇, 공공 건물용 청소 로봇, 물류 로봇, 서비스 로봇을 비롯하여, 산업용 로봇 등에도 사용될 수 있다.
즉, 본 발명에 따른 동적 안전 구역 생성 장치(100)는 종래에 이용되고 있는 방식인, 이동 로봇의 속도와 방향에 따라 사용자가 직접 안전 구역을 입력하는 방식으로 인해 안전 구역의 개수에 대한 한계와 유저 폴트(user fault)의 위험성이 높은 방식에서 벗어나, 이동 로봇의 형상 정보와 방향/속도 정보를 통해 사용자에 의한 안전 구역의 입력 없이 속도/방향에 따라 이동 로봇의 예상 위치를 계산하고 자동으로 동적 안전 구역(dynamic safety zone)을 생성함으로써, 디프 휠(diff wheel)과 메카넘 휠(Mecanum wheel) 등과 같은 다양한 휠이 장착된 이동 로봇에 모두 사용할 수 있다. 이에 따라, 사용자에 의해 설정된 안전 구역이 선택적으로 변경되는 종래의 안전 구역 생성 방식과 달리, 본 발명은 사용자의 직접적인 안전 구역의 입력없이 모든 방향에 대한 안전 구역이 자동으로 생성되기 때문에 안전 구역 사이의 밀도와 전방위에 대한 안전 기능을 수행할 수 있으며, 사용자 입력에 의한 유저 폴트(user fault)를 크게 줄일 수 있다.
한편, 본 발명에 따른 동적 안전 구역 생성 장치(100)는 이동 로봇에 탑재되어 이동 로봇에 장착된 센서로부터 획득한 정보를 기반으로 안전 구역을 동적으로 생성할 수 있다. 물론, 본 발명에 따른 동적 안전 구역 생성 장치(100)는 이동 로봇을 무선 통신을 통해 원격에서 관리하는 서버에 탑재되어 이동 로봇으로부터 제공되는 정보를 기반으로 해당 이동 로봇의 안전 구역을 동적으로 생성하고, 생성한 안전 구역에 대한 정보를 해당 이동 로봇에게 제공할 수도 있다.
이를 위해, 동적 안전 구역 생성 장치(100)는 정보 획득부(110) 및 안전 구역 생성부(130)를 포함할 수 있다.
정보 획득부(110)는 이동 로봇의 이동 방향과 이동 속도를 획득한다.
여기서, 이동 로봇의 이동 방향은 이동 로봇의 직진 이동에 따른 진행 방향, 이동 로봇의 회전 이동에 따른 진행 방향 및 이동 로봇의 회전 이동과 직진 이동이 동시에 발생되는 경우에 따른 진행 방향 중 하나를 말한다.
그리고, 이동 로봇의 직진 이동은 x축 상에서의 직진 이동, y축 상에서의 직진 이동 및 x축과 y축 상에서의 대각선 이동 중 하나를 말한다.
그리고, 이동 로봇의 회전 이동은 좌측으로의 회전 이동 및 우측으로의 회전 이동 중 하나를 말한다.
안전 구역 생성부(130)는 이동 로봇의 형상 정보, 정보 획득부(110)를 통해 획득한 이동 로봇의 이동 방향 및 정보 획득부(110)를 통해 획득한 이동 로봇의 이동 속도 중 적어도 하나를 기반으로 이동 로봇에 대한 안전 구역(safety zone)을 동적으로 생성한다.
이때, 안전 구역 생성부(130)는 미리 설정된 주기 단위로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 물론, 안전 구역 생성부(130)는 이동 로봇의 이동 방향과 이동 속도 중 적어도 하나가 변화되는 경우에 이동 로봇에 대한 안전 구역을 동적으로 생성할 수도 있다.
보다 자세히 설명하면, 안전 구역 생성부(130)는 이동 로봇의 이동 방향과 이동 속도를 기반으로 이동 로봇의 미래 예상 위치를 획득할 수 있다. 예컨대, 도 6에 도시된 바와 같이, 안전 구역 생성부(130)는 이동 로봇의 이동 방향과 이동 속도를 기반으로, 이동 로봇의 현재 중심점 위치를 기준으로 예상되는 이동 로봇의 미래 위치를 획득할 수 있다.
즉, 안전 구역 생성부(130)는 이동 로봇의 이동 방향과 이동 속도를 기반으로 x축 방향의 이동 속도와 y축 방향의 이동 속도를 획득할 수 있다. 안전 구역 생성부(130)는 x축 방향의 이동 속도를 기반으로 이동 로봇의 미래 예상 x축 위치를 획득하고, y축 방향의 이동 속도를 기반으로 이동 로봇의 미래 예상 y축 위치를 획득할 수 있다. 안전 구역 생성부(130)는 미래 예상 x축 위치와 미래 예상 y축 위치를 기반으로 이동 로봇의 미래 예상 위치를 획득할 수 있다.
예컨대, 안전 구역 생성부(130)는 아래의 [수학식 1]을 통해 이동 로봇의 미래 예상 위치를 획득할 수 있다.
[수학식 1]
future location.x = speed.x * (response time + braking distance + margin distance)
future location.y = speed.y * (response time + braking distance + margin distance)
여기서, future location.x는 이동 로봇의 미래 예상 x축 위치를 나타내고, future location.y는 이동 로봇의 미래 예상 y축 위치를 나타낸다. speed.x는 이동 로봇의 x축 방향의 이동 속도를 나타내고, speed.y는 이동 로봇의 y축 방향의 이동 속도를 나타낸다. braking distance는 이동 로봇의 정지까지 소요되는 거리를 나타내며, 이동 로봇의 속도에 따라 미리 설정되어 있다. margin distance는 이동 로봇의 안전을 위해 미리 설정된 여유 거리를 나타낸다. response time은 이동 로봇에 장착된 센서의 응답 시간으로, 아래의 [수학식 2]를 통해 획득할 수 있다.
[수학식 2]
response time = (sensor scanning time * sampling count) + communication delay + margin response time
여기서, sensor scanning time은 이동 로봇에 장착된 센서의 스캔 시간을 나타낸다. sampling count는 이동 로봇에 장착된 센서의 샘플링 횟수를 나타낸다. communication delay는 이동 로봇에 장착된 센서의 통신 지연 시간을 나타낸다. margin response time은 이동 로봇에 장착된 센서의 정확한 계측을 위해 미리 설정된 여유 응답 시간을 나타낸다.
그리고, 안전 구역 생성부(130)는 이동 로봇의 형상 정보 및 이동 로봇의 미래 예상 위치를 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 여기서, 이동 로봇의 형상 정보는 로봇의 외형에 대한 정보를 말한다.
즉, 안전 구역 생성부(130)는 이동 로봇의 형상 정보를 기반으로 디폴트(default) 안전 구역을 획득하고, 디폴트 안전 구역과 이동 로봇의 미래 예상 위치를 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
이때, 안전 구역 생성부(130)는 이동 로봇의 형상 정보를 기반으로 이동 로봇의 중심점을 기준으로 하는 전후좌우 거리를 획득하고, 이동 로봇의 중심점 및 전후좌우 거리를 기반으로 4개의 꼭지점으로 이루어지는 디폴트 안전 구역을 획득할 수 있다. 예컨대, 도 5에 도시된 바와 같이, 안전 구역 생성부(130)는 이동 로봇의 중심점을 기준으로 제1 거리(전측 거리), 제2 거리(후측 거리), 제3 거리(좌측 거리) 및 제4 거리(우측 거리)를 획득하고, 획득한 제1 내지 제4 거리를 기반으로 디폴트 안전 구역을 획득할 수 있다.
또한, 안전 구역 생성부(130)는 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 가변하여 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 예컨대, 도 7에 도시된 바와 같이, 안전 구역 생성부(130)는 이동 로봇의 현재 중심점 위치를 기준으로 하는 디폴트 안전 구역을 토대로 이동 로봇의 미래 예상 위치를 참조하여 안전 구역을 동적으로 생성할 수 있다. 이때, 안전 구역의 거리는 아래의 [수학식 3]을 통해 획득할 수 있다.
[수학식 3]
zone distance = speed * response time + braking distance + margin distance
여기서, speed는 이동 로봇의 이동 속도를 나타낸다. response time은 이동 로봇에 장착된 센서의 응답 시간으로, 위의 [수학식 2]를 통해 획득할 수 있다. braking distance는 이동 로봇의 정지까지 소요되는 거리를 나타내며, 이동 로봇의 속도에 따라 미리 설정되어 있다. margin distance는 이동 로봇의 안전을 위해 미리 설정된 여유 거리를 나타낸다.
이때, 안전 구역 생성부(130)는 이동 로봇의 현재 위치와 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 복수회 가변하여 복수개의 서브 안전 구역을 획득하고, 복수개의 서브 안전 구역을 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 예컨대, 안전 구역 생성부(130)는 이동 로봇의 현재 위치를 시작 지점으로 하고 이동 로봇의 미래 예상 위치를 목표 지점으로 하여, 시작 지점에서 목표 지점으로 이동 로봇이 이동하는 경로를 미리 설정된 거리 단위로 나누어 미리 설정된 거리 단위 마다 서브 안전 구역을 획득하고, 획득한 복수개의 서브 안전 구역을 서로 중첩하여 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
그러면, 도 8 내지 도 13을 참조하여 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례에 대하여 설명한다.
도 8은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 하나의 축 상에서의 직진 이동의 경우를 나타내고, 도 9는 본 발명의 제1 실시예에 따른 대각선 이동의 동적 안전 구역 생성 동작을 설명하기 위한 도면이며, 도 10은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, x축과 y축 상에서의 대각선 이동의 경우를 나타내며, 도 11은 본 발명의 제1 실시예에 따른 회전 이동의 동적 안전 구역 생성 동작을 설명하기 위한 도면이고, 도 12는 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 회전 이동의 경우를 나타내고, 도 13은 본 발명의 제1 실시예에 따른 동적 안전 구역 생성의 일례를 설명하기 위한 도면으로, 회전 이동과 직진 이동이 동시에 발생되는 경우를 나타낸다.
도 8을 참조하면, 동적으로 생성되는 안전 구역의 길이는 속도가 빠르면 빠를수록 안전 구역의 길이는 늘어나며, 속도가 저속일수록 안전 구역은 작아진다. 다만, 동적으로 생성되는 안전 구역은 이동 로봇의 형상, 즉 디폴트 안전 구역보다 작아질 수는 없다.
도 9 및 도 10을 참조하면, x축과 y축으로 동시에 이동할 경우, 이동 로봇은 대각선 주행을 하게 되며, 대각선 주행시에도 이동 로봇이 장애물이 부딪히지 않도록 안전 구역이 동적으로 자동 생성된다.
도 11 및 도 12를 참조하면, 이동 로봇의 회전 방향에 따라 동적의 생성되는 안전 구역의 모양이 변경되며, 이동 로봇이 우측으로 회전하는 경우에는 부딪힐 위험이 있는 우측 상단과 좌측 상단이 길어지고, 이동 로봇이 좌측으로 회전하는 경우에는 좌측 상단과 우측 하단이 길어지게 된다.
도 13을 참조하면, 이동 로봇의 회전 이동과 직진 이동이 동시에 발생되어, 직진 속도와 회전 속도가 함께 존재하는 경우에도 이동 로봇의 미래 예상 위치을 통해 얻어진 값을 토대로 회전값이 더해진 안전 구역이 생성되며, 해당 안전 구역은 모두 자동으로 속도와 방향에 따라 결정되어 변경된다.
그러면, 도 14를 참조하여 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 방법에 대하여 설명한다.
도 14는 본 발명의 제1 실시예에 따른 이동 로봇의 동적 안전 구역 생성 방법을 설명하기 위한 흐름도이다.
도 14를 참조하면, 동적 안전 구역 생성 장치(100)는 이동 로봇의 이동 방향과 이동 속도를 획득한다(S110).
그러면, 동적 안전 구역 생성 장치(100)는 이동 로봇의 형상 정보, 이동 로봇의 이동 방향 및 이동 로봇의 이동 속도 중 적어도 하나를 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성한다(S130).
이때, 동적 안전 구역 생성 장치(100)는 미리 설정된 주기 단위로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 물론, 동적 안전 구역 생성 장치(100)는 이동 로봇의 이동 방향과 이동 속도 중 적어도 하나가 변화되는 경우에 이동 로봇에 대한 안전 구역을 동적으로 생성할 수도 있다.
보다 자세히 설명하면, 동적 안전 구역 생성 장치(100)는 이동 로봇의 이동 방향과 이동 속도를 기반으로 이동 로봇의 미래 예상 위치를 획득할 수 있다. 즉, 동적 안전 구역 생성 장치(100)는 이동 로봇의 이동 방향과 이동 속도를 기반으로 x축 방향의 이동 속도와 y축 방향의 이동 속도를 획득하고, x축 방향의 이동 속도를 기반으로 이동 로봇의 미래 예상 x축 위치를 획득하며, y축 방향의 이동 속도를 기반으로 이동 로봇의 미래 예상 y축 위치를 획득하고, 미래 예상 x축 위치와 미래 예상 y축 위치를 기반으로 이동 로봇의 미래 예상 위치를 획득할 수 있다.
그리고, 동적 안전 구역 생성 장치(100)는 이동 로봇의 형상 정보 및 이동 로봇의 미래 예상 위치를 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
즉, 동적 안전 구역 생성 장치(100)는 이동 로봇의 형상 정보를 기반으로 디폴트(default) 안전 구역을 획득하고, 디폴트 안전 구역과 이동 로봇의 미래 예상 위치를 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 이때, 동적 안전 구역 생성 장치(100)는 이동 로봇의 형상 정보를 기반으로 이동 로봇의 중심점을 기준으로 하는 전후좌우 거리를 획득하고, 이동 로봇의 중심점 및 전후좌우 거리를 기반으로 4개의 꼭지점으로 이루어지는 디폴트 안전 구역을 획득할 수 있다.
또한, 동적 안전 구역 생성 장치(100)는 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 가변하여 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다. 이때, 동적 안전 구역 생성 장치(100)는 이동 로봇의 현재 위치와 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 복수회 가변하여 복수개의 서브 안전 구역을 획득하고, 복수개의 서브 안전 구역을 기반으로 이동 로봇에 대한 안전 구역을 동적으로 생성할 수 있다.
< 제2 실시예 : 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법 >
도 15 내지 도 18을 참조하여 본 발명에 따른 로봇의 기능 안전 시스템의 제2 실시예인 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법에 대해 상세하게 설명한다.
먼저, 도 15를 참조하여 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치에 대하여 설명한다.
도 15는 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치를 설명하기 위한 블록도이다.
도 15를 참조하면, 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치(이하 '모듈화 장치'라 한다)(200)는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 전체 시스템 구성(system architecture)을 이중화할 수 있다.
여기서, 본 발명은 가정용 청소 로봇, 공공 건물용 청소 로봇, 물류 로봇, 서비스 로봇을 비롯하여, 산업용 로봇 등에도 사용될 수 있다.
즉, 로봇의 기능 안전에서 요구하는 pl-d를 만족하기 위해서는 도 2에 도시된 바와 같이 입력(Input, I)단, 로직(Logic, L)단 및 출력(Output, O)단의 3개의 모듈단이 각각 이중화되어야 한다. 입력단은 "라이다(LiDAR) 센서 A(I1)"와 "라이다(LiDAR) 센서 B(I2)"로 이중화되어 있고, 로직단은 "라이다 로직(LiDAR Logic) 보드 A(L1)"와 "라이다 로직(LiDAR Logic) 보드 B(L2)"로 이중화되어 있으며, 출력단은 "O1"과 "O2"로 이중화되어 있고 그 결과가 "0 또는 2"이면 정지(stop)할 수 있다. 본 발명은 이와 같은 이중화를 전체 시스템 구성 관점에서 수행하는 방법에 대한 것이다.
이를 위해, 모듈화 장치(200)는 입력부(210), 로직부(230), 출력부(250) 및 제어부(270)를 포함할 수 있다.
입력부(210)는 복수개의 센서(211)가 장착될 수 있다.
여기서, 센서(211)는 라이다(LiDAR) 센서, 인코더(Encoder) 센서 및 클리프(Cliff) 센서 중 하나일 수 있다.
로직부(230)는 입력부(210)에 장착된 복수개의 센서(211) 각각에 대응되는 복수개의 로직 보드(logic board)(231)가 장착될 수 있다.
여기서, 로직 보드(231)는 라이다(LiDAR) 보드, 인코더(Encoder) 보드 및 기타(ETC) 보드 중 하나일 수 있다.
출력부(250)는 로직부(230)에 장착된 복수개의 로직 보드(231)의 출력을 기반으로 이중화 파라미터를 이용하여 출력값을 외부로 전달할 수 있다.
제어부(270)는 이중화 파라미터의 값을 사용자에 의해 입력된 이중화 대상 정보를 기반으로 변경할 수 있다.
여기서, 이중화 파라미터는 로직 보드(231)를 식별할 수 있는 고유 정보인 로직 보드 식별 정보, 로직 보드(231)의 타입(type)을 식별할 수 있는 정보인 로직 보드 유형 정보 및 센서(211)의 위치를 식별할 수 있는 정보인 센서 위치 정보를 포함할 수 있다.
그러면, 도 16을 참조하여 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치에 대하여 보다 자세하게 설명한다.
도 16은 도 15에 도시한 이중화 시스템 구성 모듈화 장치의 세부 구성을 설명하기 위한 블록도이다.
도 16을 참조하면, 본 발명에 따른 모듈화 장치(200)의 입력부(210)는 "타입 A"의 센서 A(211-a)가 복수개 장착되고, "타입 B"의 센서 B(211-b)가 복수개 장착되며, "타입 C"의 센서 C(211-c)가 복수개 장착될 수 있다. 여기서, "타입 A"는 라이다(LiDAR) 센서를 나타내고, "타입 B"는 인코더(Encoder) 센서를 나타내고, "타입 C"는 클리프(Cliff) 센서를 나타낼 수 있다.
그리고, 모듈화 장치(200)의 로직부(230)는 "타입 A"의 로직 보드 A(231-a)가 입력부(210)에 장착된 복수개의 센서 A(211-a) 각각에 대응되어 복수개 장착되고, "타입 B"의 로직 보드 B(231-b)가 입력부(210)에 장착된 복수개의 센서 B(211-b) 각각에 대응되어 복수개 장착되며, "타입 C"의 로직 보드 C(231-c)가 입력부(210)에 장착된 복수개의 센서 C(211-c) 각각에 대응되어 복수개 장착될 수 있다. 여기서, "타입 A"는 라이다(LiDAR) 보드를 나타내고, "타입 B"는 인코더(Encoder) 보드를 나타내며, "타입 C"는 기타(ETC) 보드를 나타낼 수 있다.
또한, 로직부(230)에 장착된 복수개의 로직 보드(231), 즉 복수개의 로직 보드 A(231-a), 복수개의 로직 보드 B(231-b) 및 복수개의 로직 보드 C(231-c)가 하나의 통신망에 연결될 수 있다.
그리고, 모듈화 장치(200)의 제어부(270)는 이중화 대상 정보가 사용자에 의해 입력되면, 이중화 대상 정보를 기반으로 이중화 파라미터의 값을 이중화 대상 세트를 단위로 하여 변경할 수 있다. 여기서, 이중화 대상 정보는 이중화 대상의 로직 보드 식별 정보와 이중화 대상의 로직 보드에 대응되는 센서 정보를 포함할 수 있다.
보다 자세히 설명하면, 제어부(270)는 이중화 대상 정보를 기반으로, 제1 쌍의 로직 보드 식별 정보, 제1 쌍의 로직 보드 유형 정보, 제1 쌍의 센서 위치 정보, 제2 쌍의 로직 보드 식별 정보, 제2 쌍의 로직 보드 유형 정보 및 제2 쌍의 센서 위치 정보를 포함하는 이중화 파라미터의 값을 이중화 대상 세트를 단위로 변경하여, 이중화 대상을 동적으로 변경할 수 있다.
이때, 출력부(250)는 2개의 OR 게이트(251 및 252)를 포함하며, 복수개의 로직 보드(231)의 출력을 기반으로 이중화 파라미터를 이용하여 2개의 OR 게이트(251 및 252) 각각에 대한 입력이 설정되고, 2개의 OR 게이트(251 및 252)의 출력값을 외부로 전달할 수 있다.
즉, 제어부(270)는 이중화 대상 정보를 기반으로 출력부(250)를 제어하여, 이중화 대상 세트의 제1 쌍에 대응되는 로직 보드의 출력이 제1 OR 게이트에 입력되도록 설정하고, 이중화 대상 세트의 제2 쌍에 대응되는 로직 보드의 출력이 제2 OR 게이트에 입력되도록 설정할 수 있다.
예컨대, 2개의 "라이다(LiDAR) 센서"인 센서 A(211-a), 2개의 "인코더(Encoder) 센서"인 센서 B(211-b) 및 2개의 "클리프(Cliff) 센서"인 센서 C(211-c)가 입력부(210)에 설치되고, 2개의 센서 A(211-a) 각각에 대응되는 2개의 "라이다(LiDAR) 보드"인 로직 보드 A(231-a), 2개의 센서 B(211-b) 각각에 대응되는 2개의 "인코더(Encoder) 보드"인 로직 보드 B(231-b) 및 2개의 센서 C(211-c) 각각에 대응되는 2개의 "기타(ETC) 보드"인 로직 보드 C(231-c)가 설치된 후, 아래와 같은 이중화 대상 정보가 입력될 수 있다.
- 이중화 대상 정보
-> 이중화 대상 세트 1 : 2개의 로직 보드 A(231-a) 각각의 식별 정보, 2개의 로직 보드 A(231-a) 각각에 연결된 센서(211)의 개수 및 센서(211)의 식별 정보 등
-> 이중화 대상 세트 2 : 2개의 로직 보드 B(231-b) 각각의 식별 정보, 2개의 로직 보드 B(231-b) 각각에 연결된 센서(211)의 개수 및 센서(211)의 식별 정보 등
-> 이중화 대상 세트 3 : 2개의 로직 보드 C(231-c) 각각의 식별 정보, 2개의 로직 보드 C(231-c) 각각에 연결된 센서(211)의 개수 및 센서(210)의 식별 정보 등
그러면, 본 발명에 따른 모듈화 장치(200)의 제어부(270)는 위와 같은 이중화 대상 정보를 기반으로 아래와 같이 이중화 파라미터의 값을 이중화 대상 세트를 단위로 변경하여 이중화 대상을 동적으로 변경할 수 있다.
- 이중화 파라미터의 값을 변경
-> 이중화 대상 세트 1 : 2개의 로직 보드 A(231-a) 중 하나의 로직 보드 A(231-a)는 제1 쌍으로 하고, 다른 로직 보드 A(231-a)는 제2 쌍으로 하여, 관련 이중화 파라미터의 값을 변경함으로써, 2개의 로직 보드 A(231-a)를 이중화 대상으로 설정함
-> 이중화 대상 세트 2 : 2개의 로직 보드 B(231-b) 중 하나의 로직 보드 B(231-b)는 제1 쌍으로 하고, 다른 로직 보드 B(231-b)는 제2 쌍으로 하여, 관련 이중화 파라미터의 값을 변경함으로써, 2개의 로직 보드 B(231-b)를 이중화 대상으로 설정함
-> 이중화 대상 세트 3 : 2개의 로직 보드 C(231-c) 중 하나의 로직 보드 C(231-c)는 제1 쌍으로 하고, 다른 로직 보드 C(231-c)는 제2 쌍으로 하여, 관련 이중화 파라미터의 값을 변경함으로써, 2개의 로직 보드 C(231-c)를 이중화 대상으로 설정함
그리고, 제어부(270)는 2개의 로직 보드 A(231-a) 중 제1 쌍으로 설정된 하나의 로직 보드 A(231-a), 2개의 로직 보드 B(231-b) 중 제1 쌍으로 설정된 하나의 로직 보드 B(231-b) 및 2개의 로직 보드 C(231-c) 중 제1 쌍으로 설정된 하나의 로직 보드 C(231-c)의 출력이 제1 OR 게이트(251)에 입력되도록 설정할 수 있다. 또한, 제어부(270)는 2개의 로직 보드 A(231-a) 중 제2 쌍으로 설정된 하나의 로직 보드 A(231-a), 2개의 로직 보드 B(231-b) 중 제2 쌍으로 설정된 하나의 로직 보드 B(231-b) 및 2개의 로직 보드 C(231-c) 중 제2 쌍으로 설정된 하나의 로직 보드 C(231-c)의 출력이 제2 OR 게이트(252)에 입력되도록 설정할 수 있다. 이를 통해, 본 발명은 출력단의 이중화를 구현할 수 있다.
그러면, 도 17을 참조하여 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치의 구현 일례에 대하여 설명한다.
도 17은 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 장치의 구현 일례를 설명하기 위한 도면이다.
도 17을 참조하면, 본 발명은 입력(Input, I)단, 로직(Logic, L)단 및 출력(Output, O)단으로 구분하여 전체 시스템을 구성하였으며, 각각의 로직 보드(LB)(231)는 하나의 통신망으로 이루어져 있어, 이중화 구성 시 필요한 센서(211)의 개수에 맞추어 로직 보드(LB)(231)의 모듈을 제거하거나 추가할 수 있다.
그리고, 출력단에서는 2개의 이중화된 데이터의 개수에 상관없이 플렉서블하게 데이터를 받을 수 있도록 2개의 OR 게이트(251 및 252)로 구성되어 있어, 로직 보드(LB)(231)의 모듈이 제거되거나 새롭게 추가되어도 전체 시스템 구성을 바꾸지 않고 이중화 시스템을 구현할 수 있다.
즉, 본 발명은 센서(211)마다 로직 보드(LB)(231)를 구성하여 모듈 단위 이중화 시스템을 구성하고, 전체 로직단에서 나오는 출력 데이터의 개수에 상관없이 이중화된 출력 보드(output board)(2개의 OR 게이트)를 사용하여 출력단을 이중화함으로써 센서(211)의 개수가 변경될 때마다 전체 이중화 시스템 구성의 큰 변화 없이 pl-d 구성이 가능하다.
본 발명에 따른 시스템 구성에서 로직단은 크게 라이다 보드(LiDAR board), 인코더 보드(Encoder board) 및 기타 보드(ETC board)의 3가지로 구분될 수 있다. 이때, 라이다 센서(LiDAR sensor)의 개수는 2개 ~ 4개, 인코더 센서(Encoder sensor)의 개수는 2개 ~ 4개, 클리프 센서(Cliff sensor)의 개수는 4EA ~ 8EA까지 동적으로 변경될 수 있다. 변경 시, 보드 내의 소프트웨어는 별도의 변경없이 센서(211)의 개수를 변경할 수 있으며, 변경 내용은 사용자가 파라미터의 데이터 형태로 해당 보드에 전달할 수 있다. 즉, 사용자는 이중화 대상 정보의 입력을 통해 변경 내용을 해당 보드에 전달할 수 있다.
사용자가 이중화하고자 하는 로직 보드(231)의 ID 넘버, 센서(211)의 개수 등과 같은 이중화 대상 정보를 입력하면, 해당 보드는 내부 알고리즘을 통해 이중화 대상 정보를 기반으로 아래와 같은 이중화 파라미터의 값을 자동으로 변경할 수 있다.
- 이중화하고자 하는 제1 쌍의 이중화 파라미터
로직 보드(231)의 ID : LB_PAIR_RS485_ID_1
로직 보드(231)의 Type : LB_PAIR_EXTRINSIC_TYPE_1
센서(211)의 Location : LB_PAIR_LIDAR_LOCATION_XYZ_1 / LB_PAIR_LIDAR_LOCATION_R_XYZ_1
- 이중화하고자 하는 제2 쌍의 이중화 파라미터
로직 보드(231)의 ID : LB_PAIR_RS485_ID_2
로직 보드(231)의 Type : LB_PAIR_EXTRINSIC_TYPE_2
센서(211)의 Location : LB_PAIR_LIDAR_LOCATION_XYZ_2 / LB_PAIR_LIDAR_LOCATION_R_XYZ_2
위와 같은 이중화 파라미터를 통해 내부 보드에서는 이중화하고자 하는 대상이 동적으로 변경될 수 있다. 즉, 본 발명은 시스템 단위로 변경하고자 하는 센서의 개수들을 변경한 다음, 이중화 파라미터의 값만 그에 맞게 변경하면 자동으로 이중화 대상이 변경될 수 있다.
그러면, 도 18을 참조하여 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 방법에 대하여 설명한다.
도 18은 본 발명의 제2 실시예에 따른 이동 로봇의 이중화 시스템 구성 모듈화 방법을 설명하기 위한 흐름도이다.
도 18을 참조하면, 본 발명에 따른 모듈화 장치(200)는 사용자에 의해 이중화 대상 정보가 입력될 수 있다(S210).
여기서, 이중화 대상 정보는 이중화 대상의 로직 보드 식별 정보와 이중화 대상의 로직 보드에 대응되는 센서 정보를 포함할 수 있다.
그런 다음, 모듈화 장치(200)는 이중화 파라미터의 값을 이중화 대상 정보를 기반으로 변경할 수 있다(S230).
여기서, 이중화 파라미터는 로직 보드(231)를 식별할 수 있는 고유 정보인 로직 보드 식별 정보, 로직 보드(231)의 타입(type)을 식별할 수 있는 정보인 로직 보드 유형 정보 및 센서(211)의 위치를 식별할 수 있는 정보인 센서 위치 정보를 포함할 수 있다.
즉, 모듈화 장치(200)는 이중화 대상 정보가 사용자에 의해 입력되면, 이중화 대상 정보를 기반으로 이중화 파라미터의 값을 이중화 대상 세트를 단위로 하여 변경할 수 있다.
보다 자세히 설명하면, 모듈화 장치(200)는 이중화 대상 정보를 기반으로, 제1 쌍의 로직 보드 식별 정보, 제1 쌍의 로직 보드 유형 정보, 제1 쌍의 센서 위치 정보, 제2 쌍의 로직 보드 식별 정보, 제2 쌍의 로직 보드 유형 정보 및 제2 쌍의 센서 위치 정보를 포함하는 이중화 파라미터의 값을 이중화 대상 세트를 단위로 변경하여, 이중화 대상을 동적으로 변경할 수 있다.
이때, 모듈화 장치(200)의 출력부(250)는 2개의 OR 게이트(251 및 252)를 포함하며, 복수개의 로직 보드(231)의 출력을 기반으로 이중화 파라미터를 이용하여 2개의 OR 게이트(251 및 252) 각각에 대한 입력이 설정되고, 2개의 OR 게이트(251 및 252)의 출력값을 외부로 전달할 수 있다.
즉, 모듈화 장치(200)는 이중화 대상 정보를 기반으로 출력부(250)를 제어하여, 이중화 대상 세트의 제1 쌍에 대응되는 로직 보드의 출력이 제1 OR 게이트에 입력되도록 설정하고, 이중화 대상 세트의 제2 쌍에 대응되는 로직 보드의 출력이 제2 OR 게이트에 입력되도록 설정할 수 있다.
< 제3 실시예 : 이동 로봇의 센서 이중화 장치 및 방법 >
도 19 내지 도 25를 참조하여 본 발명에 따른 로봇의 기능 안전 시스템의 제3 실시예인 이동 로봇의 센서 이중화 장치 및 방법에 대해 상세하게 설명한다.
먼저, 도 19 및 도 20을 참조하여 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치에 대하여 설명한다.
도 19는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치를 설명하기 위한 블록도이며, 도 20은 본 발명의 제3 실시예에 따른 센서의 이중화 과정을 설명하기 위한 도면이다.
도 19를 참조하면, 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치(이하 '센서 이중화 장치'라 한다)(300)는 로봇의 기능 안전(functional safety)에서 요구하는 pl-d(performance level d)를 만족하기 위해 센서를 통해 검출된 장애물 정보를 이용하여 센서를 이중화할 수 있다.
여기서, 본 발명은 가정용 청소 로봇, 공공 건물용 청소 로봇, 물류 로봇, 서비스 로봇을 비롯하여, 산업용 로봇 등에도 사용될 수 있다.
즉, 로봇의 기능 안전에서 요구하는 pl-d를 만족하기 위해서는 도 2에 도시된 바와 같이 입력(Input, I)단, 로직(Logic, L)단 및 출력(Output, O)단의 3개의 모듈단이 각각 이중화되어야 한다. 입력단은 "라이다(LiDAR) 센서 A(I1)"와 "라이다(LiDAR) 센서 B(I2)"로 이중화되어 있고, 로직단은 "라이다 로직(LiDAR Logic) 보드 A(L1)"와 "라이다 로직(LiDAR Logic) 보드 B(L2)"로 이중화되어 있으며, 출력단은 "O1"과 "O2"로 이중화되어 있고 그 결과가 "0 또는 2"이면 정지(stop)할 수 있다. 본 발명은 이와 같은 이중화를 시스템 구성(system architecture) 관점이 아닌 로직단을 구성하는 2개의 라이다(LiDAR) 센서를 통해 안전 구역(safety zone) 안에 존재하는 장애물을 이용하여 2개의 라이다(LiDAR) 센서의 이중화를 수행하는 방법에 대한 것이다.
이를 위해, 센서 이중화 장치(300)는 입력부(310), 로직부(330), 출력부(350) 및 제어부(370)를 포함할 수 있다.
입력부(310)는 복수개의 센서(311)가 장착될 수 있다.
여기서, 센서는 라이다(LiDAR) 센서 등일 수 있다.
로직부(330)는 입력부(310)에 장착된 복수개의 센서(311) 각각에 대응되는 복수개의 로직 보드(logic board)가 장착될 수 있다.
여기서, 로직 보드는 라이다(LiDAR) 보드 등일 수 있다.
출력부(350)는 로직부(330)에 장착된 복수개의 로직 보드(331)의 출력을 기반으로 출력값을 외부로 전달할 수 있다.
제어부(370)는 복수개의 센서(311) 각각을 통해 검출된 장애물 정보를 기반으로 미리 설정된 이중화 영역을 단위로 센서의 이중화를 수행할 수 있다.
여기서, 이중화 영역은 기능 안전(functional safety)에 요구하는 pl-d(performance level d)를 만족하기 위해 2개의 센서(311)를 통해 검출된 장애물 정보를 이용하여 이중화되는 공간적인 영역을 나타낸다.
즉, 제어부(370)는 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보를 기반으로 2개의 센서(311)의 이중화를 수행할 수 있다.
보다 자세히 설명하면, 제어부(370)는 이중화 영역에 대응되는 2개의 센서(311) 각각에서 생성된 동적 안전 구역(safety zone)을 기반으로 2개의 센서(311) 각각에서 검출된 장애물 정보를 이용하여 2개의 센서(311)의 이중화를 수행할 수 있다. 이때, 동적 안전 구역은 센서 이중화 장치(300)가 탑재된 로봇의 이동 방향과 이동 속도를 기반으로 안전 구역을 동적으로 생성할 수 있으며, 자세한 내용은 위에서 설명한 본 발명에 따른 제1 실시예와 같다.
여기서, 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보가 일치하면, 제어부(370)는 2개의 센서(311)의 이중화가 성공한 것으로 판단할 수 있다. 반면, 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보가 일치하지 않으면, 제어부(370)는 2개의 센서(311)의 이중화가 실패한 것으로 판단할 수 있다.
이때, 제어부(370)는 미리 설정된 센서 오차 정보를 이용하여 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보의 일치 여부를 확인할 수 있다.
예컨대, 도 20에 도시된 바와 같이, 이중화 영역에 "센서 A"와 "센서 B"가 대응되는 경우, "센서 A"에서 생성된 동적 안전 구역에서 장애물을 검출하여 장애물 정보를 획득하고, "센서 B"에서 생성된 동적 안전 구역에서 장애물을 검출하여 장애물 정보를 획득할 수 있다. 그런 다음, "센서 A"에서 검출된 장애물 정보와 "센서 B"에서 검출된 장애물 정보를 이용하여 "센서 A"와 "센서 B"의 이중화를 수행할 수 있다. 즉, "센서 A"에서 검출된 장애물 정보와 "센서 B"에서 검출된 장애물 정보의 일치 여부를 확인할 수 있다. 이때, 장애물 정보에 따른 장애물이 서로 인접한 이중화 영역들의 경계 지점에 위치하는 경우, 센서 오차 정보를 이용하여 "센서 A"에서 검출된 장애물 정보와 "센서 B"에서 검출된 장애물 정보의 일치 여부를 확인할 수 있다. 확인 결과, 일치하면 "센서 A"와 "센서 B"의 이중화는 성공한 것으로 판단하고, 일치하지 않으면 "센서 A"와 "센서 B"의 이중화는 실패한 것으로 판단할 수 있다.
한편, 로직 보드(331)와 제어부(370)가 일체의 형태로 구현되어, 로직 보드(331)가 제어부(370)의 동작을 수행할 수 있다.
즉, 로직 보드(331)는 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보를 기반으로 2개의 센서(311)의 이중화를 수행할 수 있다.
예컨대, 이중화 영역에 "센서 A"와 "센서 B"가 대응되고, "센서 A"에 "로직 보드 A"가 대응되며, "센서 B"에 "로직 보드 B"가 대응되는 경우, "로직 보드 A"가 "센서 A"를 통해 검출된 장애물 정보를 획득하면, "로직 보드 A"는 "센서 A"를 통해 검출된 장애물 정보를 기반으로 장애물이 검출된 이중화 영역을 식별할 수 있다. 식별된 이중화 영역이 "센서 A"와 "센서 B"가 대응된 이중화 영역인 경우, "로직 보드 A"는 "센서 B"를 통해 검출된 장애물 정보를 "로직 보드 B"로부터 제공받을 수 있다. 그러면, "로직 보드 A"는 "센서 A"를 통해 검출된 장애물 정보와 "센서 B"를 통해 검출된 장애물 정보의 일치 여부를 확인할 수 있다.
그러면, 도 21 내지 도 23을 참조하여 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 일례에 대하여 설명한다.
도 21은 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 일례의 입력부와 로직부를 설명하기 위한 블록도이고, 도 22는 도 21에 도시한 센서 이중화 장치의 이중화 영역을 설명하기 위한 도면이며, 도 23은 도 21에 도시한 센서 이중화 장치의 장애물에 따른 이중화 영역을 설명하기 위한 도면이다.
도 21 및 도 22를 참조하면, 센서 이중화 장치(300)의 일례에 따른 입력부(310)는 로봇의 전방 좌측에 제1 센서(311-a)가 장착되고, 로봇의 전방 우측에 제2 센서(311-b)가 장착되며, 로봇의 후방 좌측에 제3 센서(311-c)가 장착되고, 로봇의 후방 우측에 제4 센서(311-d)가 장착될 수 있다.
그리고, 센서 이중화 장치(300)의 일례에 따른 로직부(330)는 제1 센서(311-a)에 대응되는 제1 로직 보드(331-a), 제2 센서(311-b)에 대응되는 제2 로직 보드(331-b), 제3 센서(311-c)에 대응되는 제3 로직 보드(331-c) 및 제4 센서(311-d)에 대응되는 제4 로직 보드(331-d)가 장착될 수 있다.
그리고, 이중화 영역은 제1 센서(311-a)와 제2 센서(311-b)가 대응되는 제1 이중화 영역, 제1 센서(311-a)와 제3 센서(311-c)가 대응되는 제2 이중화 영역, 제2 센서(311-b)와 제4 센서(311-d)가 대응되는 제3 이중화 영역, 및 제3 센서(311-c)와 제4 센서(311-d)가 대응되는 제4 이중화 영역을 포함할 수 있다.
즉, 로봇의 전방위 영역(로봇의 전방 영역인 제1 이중화 영역, 로봇의 좌측 영역인 제2 이중화 영역, 로봇의 우측 영역인 제3 이중화 영역, 로봇의 후방 영역인 제4 이중화 영역)에서 센서(311)의 이중화를 구현할 수 있다.
예컨대, 도 23의 (a)에 도시된 바와 같이, "장애물 A"가 검출되면, "장애물 A"에 대응되는 이중화 영역인 "제1 이중화 영역"을 식별하고, "제1 이중화 영역"에 대응된 2개의 센서인 "제1 센서(311-a)" 및 "제2 센서(311-b)" 각각에서 검출된 장애물 정보를 이용하여 "제1 이중화 영역"에서의 센서 이중화를 수행할 수 있다. "장애물 B"가 검출되면, "장애물 B"에 대응되는 이중화 영역인 "제2 이중화 영역"을 식별하고, "제2 이중화 영역"에 대응된 2개의 센서인 "제1 센서(311-a)" 및 "제3 센서(311-c)" 각각에서 검출된 장애물 정보를 이용하여 "제2 이중화 영역"에서의 센서 이중화를 수행할 수 있다.
그리고, 도 23의 (b)에 도시된 바와 같이, "장애물 A"가 검출되면, "장애물 A"에 대응되는 이중화 영역인 "제1 이중화 영역"을 식별하고, "제1 이중화 영역"에 대응된 2개의 센서인 "제1 센서(311-a)" 및 "제2 센서(311-b)" 각각에서 검출된 장애물 정보를 이용하여 "제1 이중화 영역"에서의 센서 이중화를 수행할 수 있다. "장애물 B"가 검출되면, "장애물 B"에 대응되는 이중화 영역인 "제3 이중화 영역"을 식별하고, "제3 이중화 영역"에 대응된 2개의 센서인 "제2 센서(311-b)" 및 "제4 센서(311-d)" 각각에서 검출된 장애물 정보를 이용하여 "제3 이중화 영역"에서의 센서 이중화를 수행할 수 있다.
그리고, 도 23의 (c)에 도시된 바와 같이, "장애물 A"가 검출되면, "장애물 A"에 대응되는 이중화 영역인 "제4 이중화 영역"을 식별하고, "제4 이중화 영역"에 대응된 2개의 센서인 "제3 센서(311-c)" 및 "제4 센서(311-d)" 각각에서 검출된 장애물 정보를 이용하여 "제4 이중화 영역"에서의 센서 이중화를 수행할 수 있다. 이때, "장애물 A"가 서로 인접한 이중화 영역들(제3 이중화 영역과 제4 이중화 영역)의 경계 지점에 위치하는 있어, 센서 오차 정보를 이용하여 "제3 센서(311-c)"에서 검출된 장애물 정보와 "제4 센서(311-d)"에서 검출된 장애물 정보의 일치 여부를 확인할 수 있다. "장애물 B"가 검출되면, "장애물 B"에 대응되는 이중화 영역인 "제3 이중화 영역"을 식별하고, "제3 이중화 영역"에 대응된 2개의 센서인 "제2 센서(311-b)" 및 "제4 센서(311-d)" 각각에서 검출된 장애물 정보를 이용하여 "제3 이중화 영역"에서의 센서 이중화를 수행할 수 있다.
그리고, 도 23의 (d)에 도시된 바와 같이, "장애물 A"가 검출되면, "장애물 A"에 대응되는 이중화 영역인 "제4 이중화 영역"을 식별하고, "제4 이중화 영역"에 대응된 2개의 센서인 "제3 센서(311-c)" 및 "제4 센서(311-d)" 각각에서 검출된 장애물 정보를 이용하여 "제4 이중화 영역"에서의 센서 이중화를 수행할 수 있다. "장애물 B"가 검출되면, "장애물 B"에 대응되는 이중화 영역인 "제2 이중화 영역"을 식별하고, "제2 이중화 영역"에 대응된 2개의 센서인 "제1 센서(311-a)" 및 "제3 센서(311-c)" 각각에서 검출된 장애물 정보를 이용하여 "제2 이중화 영역"에서의 센서 이중화를 수행할 수 있다.
그러면, 도 24를 참조하여 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 다른 예에 대하여 설명한다.
도 24는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 장치의 다른 예의 이중화 영역을 설명하기 위한 도면이다.
도 24를 참조하면, 센서 이중화 장치(300)의 다른 예에 따른 입력부(310)는 로봇의 일방 좌측에 제1 센서(311-a)가 장착되고, 로봇의 일방 우측에 제2 센서(311-b)가 장착될 수 있다.
그리고, 센서 이중화 장치(300)의 다른 예에 따른 로직부(330)는 제1 센서(311-a)에 대응되는 제1 로직 보드(331-a) 및 제2 센서(311-b)에 대응되는 제2 로직 보드(331-b)가 장착될 수 있다.
그리고, 이중화 영역은 제1 센서(311-a)와 제2 센서(311-b)가 대응될 수 있다.
즉, 로봇의 전방위 영역 중 특정 영역에서 센서(311)의 이중화를 구현할 수 있다. 예컨대, 로봇의 전방 영역은 제1 센서(311-a)와 제2 센서(311-b)를 통해 이중화 영역으로 구성될 수 있다. 이에 반면, 로봇의 좌측 영역은 제1 센서(311-a)만을 통해 감지되는 제1 단일 영역으로 구성되고, 로봇의 우측 영역은 제2 센서(311-b)만을 통해 감지되는 제2 단일 영역으로 구성될 수 있다. 그리고, 로봇의 후방 영역은 센서(311)가 존재하지 않아 감지되지 않는 영역으로 구성될 수 있다.
그러면, 도 25를 참조하여 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 방법에 대하여 설명한다.
도 25는 본 발명의 제3 실시예에 따른 이동 로봇의 센서 이중화 방법을 설명하기 위한 흐름도이다.
도 25를 참조하면, 센서 이중화 장치(300)는 복수개의 센서(311) 각각을 통해 장애물 정보를 검출할 수 있다(S310).
즉, 센서 이중화 장치(310)는 센서(311)에 생성된 동적 안전 구역을 기반으로 센서(311)에서 장애물 정보를 검출할 수 있다. 이때, 동적 안전 구역은 센서 이중화 장치(300)가 탑재된 로봇의 이동 방향과 이동 속도를 기반으로 안전 구역을 동적으로 생성할 수 있다.
그런 다음, 센서 이중화 장치(300)는 복수개의 센서(311) 각각을 통해 검출된 장애물 정보를 기반으로 미리 설정된 이중화 영역을 단위로 센서(311)의 이중화를 수행할 수 있다(S330).
즉, 센서 이중화 장치(300)는 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보를 기반으로 2개의 센서(311)의 이중화를 수행할 수 있다.
여기서, 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보가 일치하면, 센서 이중화 장치(300)는 2개의 센서(311)의 이중화가 성공한 것으로 판단할 수 있다. 반면, 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보가 일치하지 않으면, 센서 이중화 장치(300)는 2개의 센서(311)의 이중화가 실패한 것으로 판단할 수 있다.
이때, 센서 이중화 장치(300)는 미리 설정된 센서 오차 정보를 이용하여 이중화 영역에 대응되는 2개의 센서(311)를 통해 검출된 장애물 정보의 일치 여부를 확인할 수 있다.
이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록 매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록 매체로서는 자기기록매체, 광 기록매체 등이 포함될 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
< 부호의 설명 >
100 : 동적 안전 구역 생성 장치,
110 : 정보 획득부,
130 : 안전 구역 생성부
200 : 이중화 시스템 구성 모듈화 장치,
210 : 입력부,
211 : 센서,
230 : 로직부,
231 : 로직 보드,
250 : 출력부,
251 : 제1 OR 게이트,
252 : 제2 OR 게이트,
270 : 제어부
300 : 센서 이중화 장치,
311 : 센서,
310 : 입력부,
331 : 로직 보드,
330 : 로직부,
350 : 출력부,
370 : 제어부

Claims (13)

  1. 이동 로봇의 이동 방향과 이동 속도를 획득하는 정보 획득부; 및
    상기 이동 로봇의 형상 정보, 상기 정보 획득부를 통해 획득한 상기 이동 로봇의 이동 방향 및 상기 정보 획득부를 통해 획득한 상기 이동 로봇의 이동 속도 중 적어도 하나를 기반으로 상기 이동 로봇에 대한 안전 구역(safety zone)을 동적으로 생성하는 안전 구역 생성부;
    를 포함하는 이동 로봇의 동적 안전 구역 생성 장치.
  2. 제1항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 이동 방향과 이동 속도를 기반으로 상기 이동 로봇의 미래 예상 위치를 획득하고, 상기 이동 로봇의 형상 정보 및 상기 이동 로봇의 미래 예상 위치를 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  3. 제2항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 이동 방향과 이동 속도를 기반으로 x축 방향의 이동 속도와 y축 방향의 이동 속도를 획득하고, x축 방향의 이동 속도를 기반으로 미래 예상 x축 위치를 획득하며, y축 방향의 이동 속도를 기반으로 미래 예상 y축 위치를 획득하고, 미래 예상 x축 위치와 미래 예상 y축 위치를 기반으로 상기 이동 로봇의 미래 예상 위치를 획득하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  4. 제2항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 형상 정보를 기반으로 디폴트(default) 안전 구역을 획득하고, 디폴트 안전 구역과 상기 이동 로봇의 미래 예상 위치를 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  5. 제4항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 형상 정보를 기반으로 상기 이동 로봇의 중심점을 기준으로 하는 전후좌우 거리를 획득하고, 상기 이동 로봇의 중심점 및 전후좌우 거리를 기반으로 4개의 꼭지점으로 이루어지는 디폴트 안전 구역을 획득하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  6. 제4항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 가변하여 상기 이동 로봇에 대한 안전 구역을 동적으로 생성하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  7. 제6항에서,
    상기 안전 구역 생성부는,
    상기 이동 로봇의 현재 위치와 상기 이동 로봇의 미래 예상 위치를 기반으로, 디폴트 안전 구역에 따른 전후좌우 거리를 복수회 가변하여 복수개의 서브 안전 구역을 획득하고, 복수개의 서브 안전 구역을 기반으로 상기 이동 로봇에 대한 안전 구역을 동적으로 생성하는,
    이동 로봇의 동적 안전 구역 생성 장치.
  8. 복수개의 센서가 장착되는 입력부;
    상기 입력부에 장착된 상기 복수개의 센서 각각에 대응되는 복수개의 로직 보드(logic board)가 장착되는 로직부;
    상기 로직부에 장착된 상기 복수개의 로직 보드의 출력을 기반으로 출력값을 외부로 전달하는 출력부; 및
    상기 복수개의 센서 각각을 통해 검출된 장애물 정보를 기반으로 미리 설정된 이중화 영역을 단위로 센서의 이중화를 수행하는 제어부;
    를 포함하는 이동 로봇의 센서 이중화 장치.
  9. 제8항에서,
    상기 제어부는,
    상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보를 기반으로 2개의 센서의 이중화를 수행하는,
    이동 로봇의 센서 이중화 장치.
  10. 제9항에서,
    상기 제어부는,
    상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보가 일치하면 2개의 센서의 이중화가 성공한 것으로 판단하고, 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보가 일치하지 않으면 2개의 센서의 이중화가 실패한 것으로 판단하는,
    이동 로봇의 센서 이중화 장치.
  11. 제10항에서,
    상기 제어부는,
    미리 설정된 센서 오차 정보를 이용하여 상기 이중화 영역에 대응되는 2개의 센서를 통해 검출된 장애물 정보의 일치 여부를 확인하는,
    이동 로봇의 센서 이중화 장치.
  12. 제9항에서,
    상기 제어부는,
    상기 이중화 영역에 대응되는 2개의 센서 각각에서 생성된 동적 안전 구역(safety zone)을 기반으로 2개의 센서 각각에서 검출된 장애물 정보를 이용하여 2개의 센서의 이중화를 수행하는,
    이동 로봇의 센서 이중화 장치.
  13. 복수개의 센서가 장착되는 입력부;
    상기 입력부에 장착된 상기 복수개의 센서 각각에 대응되는 복수개의 로직 보드(logic board)가 장착되는 로직부;
    상기 로직부에 장착된 상기 복수개의 로직 보드의 출력을 기반으로 이중화 파라미터를 이용하여 출력값을 외부로 전달하는 출력부; 및
    로직 보드 식별 정보, 로직 보드 유형 정보 및 센서 위치 정보를 포함하는 상기 이중화 파라미터의 값을 사용자에 의해 입력된 이중화 대상 정보를 기반으로 변경하는 제어부;
    를 포함하는 이동 로봇의 이중화 시스템 구성 모듈화 장치.
PCT/KR2021/016526 2020-11-12 2021-11-12 로봇의 기능 안전 시스템 WO2022103196A1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP21892363.9A EP4257301A1 (en) 2020-11-12 2021-11-12 Functional safety system of robot
US18/316,927 US20240077618A1 (en) 2020-11-12 2023-05-12 Apparatus and method for duplexing sensor of mobile robot
US18/316,889 US20240075620A1 (en) 2020-11-12 2023-05-12 Apparatus and method for generating dynamic safety zone of mobile robot
US18/316,909 US20240075622A1 (en) 2020-11-12 2023-05-12 Apparatus and method for modularizing duplex system architecture of mobile robot

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
KR20200151001 2020-11-12
KR10-2020-0151001 2020-11-12
KR10-2021-0153768 2021-11-10
KR1020210153766A KR102651026B1 (ko) 2020-11-12 2021-11-10 이동 로봇의 동적 안전 구역 생성 장치 및 방법
KR10-2021-0153766 2021-11-10
KR10-2021-0153767 2021-11-10
KR1020210153767A KR102625699B1 (ko) 2020-11-12 2021-11-10 이동 로봇의 이중화 시스템 구성 모듈화 장치 및 방법
KR1020210153768A KR102625700B1 (ko) 2020-11-12 2021-11-10 이동 로봇의 센서 이중화 장치 및 방법

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US18/316,889 Continuation-In-Part US20240075620A1 (en) 2020-11-12 2023-05-12 Apparatus and method for generating dynamic safety zone of mobile robot
US18/316,909 Continuation-In-Part US20240075622A1 (en) 2020-11-12 2023-05-12 Apparatus and method for modularizing duplex system architecture of mobile robot
US18/316,927 Continuation-In-Part US20240077618A1 (en) 2020-11-12 2023-05-12 Apparatus and method for duplexing sensor of mobile robot

Publications (1)

Publication Number Publication Date
WO2022103196A1 true WO2022103196A1 (ko) 2022-05-19

Family

ID=81601590

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/016526 WO2022103196A1 (ko) 2020-11-12 2021-11-12 로봇의 기능 안전 시스템

Country Status (3)

Country Link
US (3) US20240077618A1 (ko)
EP (1) EP4257301A1 (ko)
WO (1) WO2022103196A1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080027675A (ko) * 2006-09-25 2008-03-28 엘지전자 주식회사 로봇청소기 및 그에 따른 제어방법
US20170025019A1 (en) * 2015-07-21 2017-01-26 Robert Bosch Gmbh Sensor system for recognizing protruding or exposed objects in the surroundings of a vehicle
KR20180061929A (ko) * 2016-11-30 2018-06-08 주식회사 모디엠 듀얼 라이다를 구비한 철도시설물의 모바일 3d 맵핑시스템 및 이를 이용한 철도시설물의 3d 맵핑방법
KR20180099090A (ko) * 2017-02-28 2018-09-05 전자부품연구원 자율 주행 차량을 위한 다중 라이다 신호 융합 장치
US20190161274A1 (en) * 2017-11-27 2019-05-30 Amazon Technologies, Inc. Collision prevention for autonomous vehicles
KR101986919B1 (ko) * 2014-06-05 2019-06-07 소프트뱅크 로보틱스 유럽 충돌 회피 및 궤도 복원 기능을 가진 휴머노이드 로봇
US20190262993A1 (en) * 2017-09-05 2019-08-29 Abb Schweiz Ag Robot having dynamic safety zones

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080027675A (ko) * 2006-09-25 2008-03-28 엘지전자 주식회사 로봇청소기 및 그에 따른 제어방법
KR101986919B1 (ko) * 2014-06-05 2019-06-07 소프트뱅크 로보틱스 유럽 충돌 회피 및 궤도 복원 기능을 가진 휴머노이드 로봇
US20170025019A1 (en) * 2015-07-21 2017-01-26 Robert Bosch Gmbh Sensor system for recognizing protruding or exposed objects in the surroundings of a vehicle
KR20180061929A (ko) * 2016-11-30 2018-06-08 주식회사 모디엠 듀얼 라이다를 구비한 철도시설물의 모바일 3d 맵핑시스템 및 이를 이용한 철도시설물의 3d 맵핑방법
KR20180099090A (ko) * 2017-02-28 2018-09-05 전자부품연구원 자율 주행 차량을 위한 다중 라이다 신호 융합 장치
US20190262993A1 (en) * 2017-09-05 2019-08-29 Abb Schweiz Ag Robot having dynamic safety zones
US20190161274A1 (en) * 2017-11-27 2019-05-30 Amazon Technologies, Inc. Collision prevention for autonomous vehicles

Also Published As

Publication number Publication date
US20240075620A1 (en) 2024-03-07
US20240075622A1 (en) 2024-03-07
EP4257301A1 (en) 2023-10-11
US20240077618A1 (en) 2024-03-07

Similar Documents

Publication Publication Date Title
WO2021010757A1 (en) Mobile robot and control method thereof
WO2016003077A1 (en) Cleaning robot and controlling method thereof
WO2012005483A2 (ko) 정전 용량 변화 감지 방법, 장치 및 그 방법을 실행하는 프로그램이 기록된 기록매체, 및 그 방법을 사용한 터치 감지 방법, 장치 및 그 방법을 실행하는 프로그램이 기록된 기록매체
WO2020060155A1 (en) Robot cleaner, charging device and charging system
WO2021251549A1 (en) Display device
WO2016028021A1 (ko) 청소 로봇 및 그 제어 방법
WO2018212608A1 (ko) 구동형 마킹 시스템, 구동형 마킹 장치의 제어방법 및 컴퓨터 판독 가능한 기록매체
EP2907298A1 (en) Image processing device and image processing method
WO2017196023A1 (en) Camera module and auto focusing method thereof
EP3993601A1 (en) Lawn mower robot and method for controlling the same
WO2022015032A1 (ko) 잉크젯 다파장 경화기
WO2022103195A1 (ko) 로봇 시스템
WO2022103196A1 (ko) 로봇의 기능 안전 시스템
WO2021006553A1 (en) Moving robot and control method thereof
WO2021215869A1 (ko) 로봇 청소기 및 로봇 청소기의 제어방법
WO2021221236A1 (ko) Iot 기반 공간 지능 기능이 구현되는 이동 로봇 및 이동 로봇의 제어 방법
WO2021006635A1 (en) Electronic apparatus for identifying object through warped image and control method thereof
WO2021006671A1 (en) Mobile robot using artificial intelligence and control method thereof
CN107111426A (zh) 调参方法、调参装置、调参系统及调参存储器
WO2021177557A1 (ko) 다광축 센서
WO2021091105A1 (en) Electronic apparatus and control method thereof
WO2018143653A1 (ko) 터치 입력 및 지문 입력을 인식하는 장치 및 방법
WO2021157833A1 (ko) 로봇 청소기 및 그 제어 방법
WO2017116131A1 (ko) 청소 로봇 및 청소 로봇의 제어 방법
WO2020105795A1 (ko) 모터 제어 장치, 모터 제어 시스템 및 모터 제어 방법

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021892363

Country of ref document: EP

Effective date: 20230612