TWI621834B - Navigation system and navigation method - Google Patents

Navigation system and navigation method Download PDF

Info

Publication number
TWI621834B
TWI621834B TW106110187A TW106110187A TWI621834B TW I621834 B TWI621834 B TW I621834B TW 106110187 A TW106110187 A TW 106110187A TW 106110187 A TW106110187 A TW 106110187A TW I621834 B TWI621834 B TW I621834B
Authority
TW
Taiwan
Prior art keywords
electronic device
distance value
value
obstacle
processor
Prior art date
Application number
TW106110187A
Other languages
Chinese (zh)
Other versions
TW201741626A (en
Inventor
周鴻鈞
吳亭穎
Original Assignee
華碩電腦股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 華碩電腦股份有限公司 filed Critical 華碩電腦股份有限公司
Publication of TW201741626A publication Critical patent/TW201741626A/en
Application granted granted Critical
Publication of TWI621834B publication Critical patent/TWI621834B/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation

Landscapes

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

Abstract

一種導航系統,包含:一處理器及多個測距模組。處理器用以依據一導航路徑以控制一電子裝置的一移動方向,並取得一空間資訊,依據空間資訊設置一航點。測距模組分別用以測量電子裝置與航點的一航點距離值。其中,當處理器判斷航點距離值小於一航點門檻值時,處理器根據由測距模組取得多個障礙距離值計算出一第一距離值及一第二距離值,並根據第一距離值及第二距離值的差值決定操作行為。 A navigation system includes: a processor and a plurality of ranging modules. The processor is configured to control a moving direction of an electronic device according to a navigation path, obtain a spatial information, and set a waypoint according to the spatial information. The ranging module is used to measure a waypoint distance value between the electronic device and the waypoint. Wherein, when the processor judges that the waypoint distance value is less than a waypoint threshold value, the processor calculates a first distance value and a second distance value according to a plurality of obstacle distance values obtained by the ranging module, and according to the first The difference between the distance value and the second distance value determines the operation behavior.

Description

導航系統及導航方法 Navigation system and navigation method

本案是有關於一種導航系統及導航方法。特別是有關於一種應用於移動機器人的導航系統及導航方法。 This case is about a navigation system and navigation method. In particular, it relates to a navigation system and a navigation method applied to a mobile robot.

機器人導航技術日臻成熟,然而應用於居家型服務的機器人,由於需面對高不確定性之居家環境與障礙物擺設,因此居家型服務機器人需要有更好更穩定的自主導航能力。 Robot navigation technology is becoming more and more mature. However, robots used in home-based services need to have better and more stable autonomous navigation capabilities due to the highly uncertain home environment and obstacles.

本案提供一種導航系統,應用於一電子裝置,此導航系統包含:一處理器及多個測距模組。處理器用以依據一導航路徑以控制一電子裝置的一移動方向,並取得一空間資訊,依據空間資訊設置一航點。測距模組分別用以測量電子裝置與航點的一航點距離值。其中,當處理器判斷航點距離值小於一航點門檻值時,處理器根據由 測距模組取得的多個障礙距離值計算出一第一距離值及一第二距離值,當第一距離值小於第二距離值,則處理器控制電子裝置執行一第一行為,當第一距離值大於第二距離值,則處理器控制電子裝置執行一第二行為,當第一距離值等於第二距離值,則處理器控制電子裝置執行一第三行為。 This case provides a navigation system applied to an electronic device. The navigation system includes a processor and a plurality of ranging modules. The processor is configured to control a moving direction of an electronic device according to a navigation path, obtain a spatial information, and set a waypoint according to the spatial information. The ranging module is used to measure a waypoint distance value between the electronic device and the waypoint. Wherein, when the processor judges that the waypoint distance value is less than a waypoint threshold, the processor The plurality of obstacle distance values obtained by the ranging module calculate a first distance value and a second distance value. When the first distance value is less than the second distance value, the processor controls the electronic device to perform a first behavior. If a distance value is greater than the second distance value, the processor controls the electronic device to perform a second behavior. When the first distance value is equal to the second distance value, the processor controls the electronic device to perform a third behavior.

本案之另提供一種導航方法,包含:取得一空間資訊,依據空間資訊設置一航點;測量一電子裝置與航點的一航點距離值;判斷航點距離值是否小於一航點門檻值;當判斷航點距離值小於一航點門檻值時,一處理器根據由複數個測距模組取得的複數個障礙距離值計算出一第一距離值及一第二距離值,當第一距離值小於第二距離值,則處理器控制電子裝置執行一第一行為,當第一距離值大於第二距離值,則處理器控制電子裝置執行一第二行為,當第一距離值等於第二距離值,則處理器控制電子裝置執行一第三行為。 Another navigation method in this case includes: obtaining a spatial information, setting a waypoint based on the spatial information; measuring a waypoint distance value between an electronic device and the waypoint; and determining whether the waypoint distance value is less than a waypoint threshold value; When determining that the waypoint distance value is less than a waypoint threshold value, a processor calculates a first distance value and a second distance value based on the plurality of obstacle distance values obtained by the plurality of ranging modules. If the value is less than the second distance value, the processor controls the electronic device to perform a first behavior. When the first distance value is greater than the second distance value, the processor controls the electronic device to perform a second behavior. When the first distance value is equal to the second distance value, The distance value, the processor controls the electronic device to perform a third behavior.

R1、R2、R3、R4、R5‧‧‧區域 R1, R2, R3, R4, R5‧‧‧ area

S1、S2、S3、S4、S5‧‧‧測距模組 S1, S2, S3, S4, S5‧‧‧ ranging module

10‧‧‧處理器 10‧‧‧ processor

20‧‧‧儲存模組 20‧‧‧Storage Module

30‧‧‧電源供應器 30‧‧‧ Power Supply

100‧‧‧導航系統 100‧‧‧ Navigation System

150‧‧‧機器人 150‧‧‧ Robot

HD‧‧‧頭部 HD‧‧‧Head

C1、C2‧‧‧攝影機 C1, C2‧‧‧ camera

NK‧‧‧支撐部 NK‧‧‧Support

BD‧‧‧本體 BD‧‧‧Body

A-A‧‧‧沿線 A-A‧‧‧Along the line

WH1、WH2‧‧‧輪子 WH1, WH2‧‧‧ wheels

RM‧‧‧操作環境 RM‧‧‧Operating environment

BK1、BK2、BK3‧‧‧牆面 BK1, BK2, BK3‧‧‧wall

L1‧‧‧寬度 L1‧‧‧Width

L2‧‧‧長度 L2‧‧‧ length

a、b、c、d、e‧‧‧方向 a, b, c, d, e‧‧‧ directions

r1、r2、r3、r4‧‧‧範圍 r1, r2, r3, r4‧‧‧ range

SP‧‧‧障礙空間起點 SP‧‧‧ Start of Obstacle Space

WP‧‧‧航點 WP‧‧‧Waypoints

EP‧‧‧障礙空間終點 EP‧‧‧ End of Obstacle Space

300‧‧‧導航方法 300‧‧‧ Navigation method

310~370‧‧‧步驟 310 ~ 370‧‧‧step

TCr0‧‧‧轉向係數 TCr0‧‧‧ steering coefficient

Vr0‧‧‧行進速度 Vr0‧‧‧ travel speed

SF、SFR、SFL‧‧‧障礙距離值 SF, SFR, SFL‧‧‧ obstacle distance value

為讓本揭示內容之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附圖示之說明如下:第1A圖為根據本案一實施例繪示的一種導 航系統的示意圖;第1B圖為根據本案一實施例繪示的一種移動機器人的示意圖;第2圖為根據本案一實施例繪示的一種導航系統之操作環境的示意圖;第3圖為根據本案一實施例繪示的一種導航方法的流程圖;第4A~4F圖為根據本案一實施例繪示的一種導航系統之輸出結果的示意圖;第5A、6A、7A及8A圖為根據本案一實施例繪示的一種導航方法的參數對應關係之示意圖;以及第5B、6B、7B及8B圖為根據本案一實施例繪示的一種導航系統的操作行為之示意圖。 In order to make the above and other objects, features, advantages, and embodiments of the present disclosure more comprehensible, the description of the accompanying drawings is as follows: FIG. 1A is a guide according to an embodiment of the present invention. 1B is a schematic diagram of a mobile robot according to an embodiment of the present case; FIG. 2 is a schematic diagram of an operating environment of a navigation system according to an embodiment of the present case; and FIG. 3 is a diagram according to the present case A flowchart of a navigation method shown in an embodiment; FIGS. 4A to 4F are schematic diagrams of output results of a navigation system according to an embodiment of the case; and FIGS. 5A, 6A, 7A, and 8A are implemented according to the case A schematic diagram of the parameter correspondence of a navigation method is illustrated as an example; and Figures 5B, 6B, 7B, and 8B are schematic diagrams of the operation behavior of a navigation system according to an embodiment of the present invention.

請參閱第1A~1B圖,第1A圖為根據本案一實施例繪示的一種導航系統100的示意圖。第1B圖為根據本案一實施例繪示的一種移動機器人150的示意圖。於一實施例中,導航系統100包含一處理器10及多個測距模組S1~S5。於一實施例中,導航系統100更包含儲存模組20及電源供應器30。 Please refer to FIGS. 1A to 1B. FIG. 1A is a schematic diagram of a navigation system 100 according to an embodiment of the present invention. FIG. 1B is a schematic diagram of a mobile robot 150 according to an embodiment of the present invention. In one embodiment, the navigation system 100 includes a processor 10 and a plurality of ranging modules S1 to S5. In one embodiment, the navigation system 100 further includes a storage module 20 and a power supply 30.

於一實施例中,處理器10可以由微控制單元(microcontroller)、微處理器(microprocessor)、數位訊號處理器(digital signal processor)、特殊應用積體電路(application specific integrated circuit,ASIC)或一邏輯電路以實現之。於一實施例中,測距模組S1~S5包含超音波發射器、接收器和控制電路。於一實施例中,測距模組S1~S5可以是超音波測距模組、雷射測距儀、或其他具有測距功能之裝置。於一實施例中,儲存模組20可用以儲存至少一地圖資訊,儲存模組20可由記憶體、硬碟、隨身碟記憶卡等裝置以實施。 In an embodiment, the processor 10 may be a micro controller, a microprocessor, a digital signal processor, an application specific integrated circuit (ASIC), or a microprocessor. Logic circuit to achieve it. In one embodiment, the ranging modules S1 to S5 include an ultrasonic transmitter, a receiver, and a control circuit. In an embodiment, the ranging modules S1 to S5 may be ultrasonic ranging modules, laser rangefinders, or other devices with a ranging function. In one embodiment, the storage module 20 may be used to store at least one map information, and the storage module 20 may be implemented by a device such as a memory, a hard disk, a flash memory card, and the like.

於一實施例中,處理器10、多個測距模組S1~S5、儲存模組20及電源供應器30可以設置於移動機器人150的內部(例如為本體BD)。舉例而言,如第1B圖所示,若沿著A-A沿線將移動機器人150橫切開,則可由俯視的視角看到如第1A圖所示之各元件的設置方式。 In one embodiment, the processor 10, the plurality of ranging modules S1 to S5, the storage module 20, and the power supply 30 may be disposed inside the mobile robot 150 (for example, the main body BD). For example, as shown in FIG. 1B, if the mobile robot 150 is cut transversely along the line A-A, the arrangement of the components shown in FIG. 1A can be seen from a top view.

於一實施例中,本案所述之電子裝置可以是一移動機器人150,然,本案並不限於此,一些具有移動功能的電子裝置亦可應用本發明。於一實施例中,移動機器人150係為一種具有自主導航功能的居家型服務機器人,可依據事先定義或即時偵測而得的導航路徑移動,例如移動機器人150可在客廳與房間之間移動。 In an embodiment, the electronic device described in this case may be a mobile robot 150. However, this case is not limited to this, and some electronic devices with a mobile function can also apply the present invention. In one embodiment, the mobile robot 150 is a home service robot with autonomous navigation function, and can move according to a navigation path defined in advance or detected in real time. For example, the mobile robot 150 can move between a living room and a room.

於一實施例中,移動機器人150係藉由至少一支撐部NK以連接頭部HD及本體BD。 In one embodiment, the mobile robot 150 is connected to the head HD and the main body BD through at least one support portion NK.

於一實施例中,移動機器人150中的處理器10可透過控制馬達(未繪示)以轉動輪子WH1、WH2,藉此控制輪子WH1、WH2之速度與轉向,使移動機器人150能夠依據導航路徑移動。 In an embodiment, the processor 10 in the mobile robot 150 can rotate the wheels WH1 and WH2 by controlling a motor (not shown), thereby controlling the speed and steering of the wheels WH1 and WH2, so that the mobile robot 150 can follow the navigation path. mobile.

於一實施例中,移動機器人150的頭部HD可包含攝影機C1、C2,用以拍攝影像。於一實施例中,攝影機C1、C2可以是由至少一電荷耦合元件(Charge Coupled Device;CCD)或一互補式金氧半導體(Complementary Metal-Oxide Semiconductor;CMOS)感測器所組成。 In an embodiment, the head HD of the mobile robot 150 may include cameras C1 and C2 for capturing images. In one embodiment, the cameras C1 and C2 may be composed of at least one Charge Coupled Device (CCD) or a complementary metal-oxide semiconductor (CMOS) sensor.

接著,請一併參閱第2~3圖,第2圖為根據本案一實施例繪示的一種導航系統100之操作環境RM的示意圖。第3圖為根據本案一實施例繪示的一種導航方法300的流程圖。須注意的是,本發明下述實施例皆可由第1A圖的導航系統100實現之,然,本發明的測距模組並不限於五個測距模組S1~S5,亦可依實作需求以調整測距模組的數量及設置位置。 Next, please refer to FIGS. 2 to 3 together. FIG. 2 is a schematic diagram of an operating environment RM of a navigation system 100 according to an embodiment of the present invention. FIG. 3 is a flowchart of a navigation method 300 according to an embodiment of the present invention. It should be noted that the following embodiments of the present invention can be implemented by the navigation system 100 in FIG. 1A. However, the ranging module of the present invention is not limited to the five ranging modules S1 to S5, and can also be implemented as required. Need to adjust the number and location of ranging modules.

於第2圖中,導航系統100的操作環境RM可以是使用者的居住空間,例如,操作環境RM中可包含有多個牆面BK1~BK3以分隔房間。此外,導航系統100的處理器10可由儲存模組20中讀取此 操作環境RM的地圖資訊,並依據地圖資訊以設置導航路徑及取得空間資訊,其中,空間資訊包含至少一障礙物位置。於一實施例中,空間資訊例如包含走道位置、走道長度、牆面位置、牆面厚度、牆面長度、房門位置、房門寬度...等資訊。於一實施例中,牆面BK1~BK3視為導航系統100在移動時的障礙物,而牆面BK1~BK3所在的位置即為障礙物位置。 In FIG. 2, the operating environment RM of the navigation system 100 may be a living space of a user. For example, the operating environment RM may include multiple walls BK1 to BK3 to separate rooms. In addition, the processor 10 of the navigation system 100 can read this from the storage module 20 Map information of the operating environment RM, and set a navigation path and obtain spatial information according to the map information, wherein the spatial information includes at least one obstacle position. In an embodiment, the spatial information includes, for example, aisle position, aisle length, wall position, wall thickness, wall length, door position, door width, etc. In an embodiment, the walls BK1 to BK3 are regarded as obstacles when the navigation system 100 is moving, and the positions of the walls BK1 to BK3 are the positions of the obstacles.

於一實施例中,處理器10藉由地圖資訊配合已知的自主尋路方法(如隨機覆蓋法或路徑規劃方式),以規劃導航路徑。由於處理器10可透過已知的自主尋路方法進行規畫路線,故此處不贅述之。 In one embodiment, the processor 10 uses map information to cooperate with a known autonomous wayfinding method (such as a random coverage method or a path planning method) to plan a navigation path. Since the processor 10 can plan the route through a known autonomous wayfinding method, it will not be repeated here.

於步驟310中,處理器10取得空間資訊,並依據空間資訊設置航點WP。 In step 310, the processor 10 obtains spatial information and sets a waypoint WP according to the spatial information.

舉例而言,如第2圖所示,處理器10依據地圖資訊以設置導航路徑及取得空間資訊後,可得知操作環境RM中的牆面BK1及BK2之間有一房門(或較狹小的通道),且此房門具有長度L2(例如為80公分)及寬度L1(例如為20公分);因此,處理器10將航點WP設置於此房門的中間位置(約為長度L2及寬度L1的中間)。例如,處理器10規劃移動機器人150從當前位置沿著方向a朝向航點WP 前進。於一些實施例中,處理器10僅需將航點WP約略設置於房門的位置即可。 For example, as shown in FIG. 2, after the processor 10 sets the navigation path and obtains the spatial information based on the map information, it can be learned that there is a room door (or a small one) between the walls BK1 and BK2 in the operating environment RM. Access), and the door has a length L2 (for example, 80 cm) and a width L1 (for example, 20 cm); therefore, the processor 10 sets the waypoint WP in the middle of the door (about the length L2 and the width L1 in the middle). For example, the processor 10 plans the mobile robot 150 toward the waypoint WP from the current position in the direction a go ahead. In some embodiments, the processor 10 only needs to set the waypoint WP approximately at the door position.

於一實施例中,處理器10更用以依據至少一障礙物位置以設置障礙空間起點SP及障礙空間終點EP,並設置航點WP於障礙空間起點SP及障礙空間終點EP之間。 In an embodiment, the processor 10 is further configured to set the obstacle space start point SP and the obstacle space end point EP according to at least one obstacle position, and set the waypoint WP between the obstacle space start point SP and the obstacle space end point EP.

藉此,當處理器10判斷移動機器人150移動到障礙空間起點SP時,則可得知移動機器人150即將行經航點WP(代表較狹小的空間),此時處理器10可進一步偵測並調整移動機器人150的轉向及行進速度,以防止移動機器人150碰撞到障礙物,接著,當處理器10偵測判斷移動機器人150移動到障礙空間終點EP時,則代表移動機器人150已通過航點WP。 Thereby, when the processor 10 judges that the mobile robot 150 has moved to the starting point SP of the obstacle space, it can be known that the mobile robot 150 is about to pass the waypoint WP (representing a relatively small space). At this time, the processor 10 can further detect and adjust The turning and traveling speed of the mobile robot 150 prevents the mobile robot 150 from colliding with an obstacle. Then, when the processor 10 detects and determines that the mobile robot 150 has moved to the end point EP of the obstacle space, it means that the mobile robot 150 has passed the waypoint WP.

於步驟320中,測距模組S1~S5分別測量移動機器人150與航點WP的航點距離值。 In step 320, the ranging modules S1 to S5 measure the waypoint distance values between the mobile robot 150 and the waypoint WP, respectively.

於一實施例中,測距模組S1~S5可應用已知的定位方法(如環境地圖模型匹配定位、信標定位方式)以得知移動機器人150的當前位置與航點WP之間的距離,並將此距離視為航點距離值。 In an embodiment, the ranging modules S1 to S5 can apply known positioning methods (such as environment map model matching positioning and beacon positioning methods) to learn the distance between the current position of the mobile robot 150 and the waypoint WP. And treat this distance as a waypoint distance value.

於一實施例中,移動機器人150亦可配合應用攝影機C1、C2以拍攝環境影像或深度影像以測量移動機器人150與航點WP的航點距離值,或是 應用編碼器以測量移動機器人150與航點WP的航點距離值。 In an embodiment, the mobile robot 150 may also cooperate with the application of the cameras C1 and C2 to capture environmental images or depth images to measure the waypoint distance value between the mobile robot 150 and the waypoint WP, or An encoder is applied to measure the waypoint distance value between the mobile robot 150 and the waypoint WP.

於步驟330中,處理器10判斷航點距離值是否小於一航點門檻值。若是,則進入步驟340,若否,則回到步驟320持續偵測移動機器人150與航點WP的航點距離值。於一實施例中,處理器10可事先將航點門檻值設定為一定值(例如為30公分),以判斷航點距離值是否小於30公分。 In step 330, the processor 10 determines whether the waypoint distance value is less than a waypoint threshold value. If yes, go to step 340; if no, go back to step 320 to continuously detect the waypoint distance value between the mobile robot 150 and the waypoint WP. In an embodiment, the processor 10 may set the waypoint threshold value to a certain value (for example, 30 cm) in advance to determine whether the waypoint distance value is less than 30 cm.

於另一實施例中,處理器10可事先將航點門檻值設定為障礙空間起點SP與航點WP之間的距離長度(例如為40公分);因此,當航點距離值為30公分時,處理器10判斷航點距離值小於一航點門檻值,反之,當航點距離值為50公分時,處理器10判斷航點距離值不小於一航點門檻值。 In another embodiment, the processor 10 may set the waypoint threshold value in advance as the distance between the obstacle space starting point SP and the waypoint WP (for example, 40 cm); therefore, when the waypoint distance value is 30 cm The processor 10 determines that the waypoint distance value is less than a waypoint threshold value. On the other hand, when the waypoint distance value is 50 cm, the processor 10 determines that the waypoint distance value is not less than a waypoint threshold value.

於一實施例中,當處理器10判斷移動機器人150位於障礙空間起點SP時,處理器10控制移動機器人150以第一行進速度前進(例如以相對較慢的行進速度前進);當處理器10判斷移動機器人150行經航點WP後且於移動機器人150抵達障礙空間終點EP時,處理器10控制移動機器人150以第二行進速度前進(例如以相對較快的行進速度前進)。其中,第一行進速度低於第二行進速度。 In an embodiment, when the processor 10 determines that the mobile robot 150 is located at the starting point SP of the obstacle space, the processor 10 controls the mobile robot 150 to advance at a first traveling speed (for example, to advance at a relatively slow traveling speed); when the processor 10 After determining that the mobile robot 150 has passed the waypoint WP and when the mobile robot 150 reaches the obstacle space end point EP, the processor 10 controls the mobile robot 150 to advance at a second traveling speed (for example, to advance at a relatively fast traveling speed). Among them, the first traveling speed is lower than the second traveling speed.

藉此,處理器10可判斷移動機器人150是否已移動至(或經過)障礙空間起點SP,當處理器10 判斷移動機器人150移動到障礙空間起點SP時,則進入步驟340。 With this, the processor 10 can determine whether the mobile robot 150 has moved (or passed) the starting point SP of the obstacle space, and when the processor 10 When it is determined that the mobile robot 150 has moved to the starting point SP of the obstacle space, the process proceeds to step 340.

於步驟340中,處理器10由測距模組S1~S5取得多個障礙距離值,並根據此些障礙距離值計算出第一距離值及第二距離值(意即,將此些障礙距離值代入模糊理論(fuzzy theory)演算法,以取得第一距離值及第二距離值)。 In step 340, the processor 10 obtains a plurality of obstacle distance values from the ranging modules S1 to S5, and calculates a first distance value and a second distance value based on the obstacle distance values (that is, the obstacle distances are calculated). Value into a fuzzy theory algorithm to obtain the first distance value and the second distance value).

於一實施例中,第一距離值代表一偏右距離值,第二距離值代表一偏左距離值。此外,偏右距離值及偏左距離值的取得方式將於下述實施例中詳述之。 In one embodiment, the first distance value represents a rightward distance value, and the second distance value represents a leftward distance value. In addition, the method of obtaining the rightward distance value and the leftward distance value will be described in detail in the following embodiments.

於一實施例中,障礙距離值為移動機器人150與至少一障礙物位置之一距離。 In an embodiment, the obstacle distance value is a distance between the mobile robot 150 and at least one obstacle position.

於一實施例中,如第1A圖所示,測距模組S1~S5分別設置於移動機器人150內部的前側、左側、右側、左前側及右前側,其中,測距模組S1可朝向區域R1發送超音波,以得知區域R1內是否有障礙物存在,並測量障礙物與移動機器人150之間的障礙距離值,相似地,測距模組S2、S3、S4及S5各自可朝向區域R2、R3、R4及R5發送超音波,以得知區域R2、R3、R4及R5內是否有障礙物存在,並測量障礙物與移動機器人150之間的障礙距離值。然,本案的測距模組S1~S5並不 限於此種配置方式,亦可依實作需求以調整其各自的設置位置。 In an embodiment, as shown in FIG. 1A, the ranging modules S1 to S5 are respectively disposed on the front side, the left side, the right side, the left front side, and the right front side inside the mobile robot 150, wherein the ranging module S1 can face the area R1 sends an ultrasonic wave to know whether there is an obstacle in the area R1, and measures the distance between the obstacle and the mobile robot 150. Similarly, the ranging modules S2, S3, S4, and S5 can each face the area. R2, R3, R4, and R5 send ultrasonic waves to know whether there are obstacles in the areas R2, R3, R4, and R5, and measure the distance between the obstacles and the mobile robot 150. However, the ranging modules S1 to S5 in this case are not Limited to this configuration method, it can also adjust its respective setting position according to actual needs.

接著,處理器10將此些障礙距離值代入模糊理論演算法,以取得偏右距離值及偏左距離值。 Next, the processor 10 substitutes these obstacle distance values into a fuzzy theory algorithm to obtain rightward distance values and leftward distance values.

於一實施例中,模糊理論演算法是使用自然語言描述目前狀態之邏輯方法,利用自然語言中具有不精確(Imprecision)與不明確(Ambiguity)之特性,以模糊推論(Fuzzy Inference)構成模糊集合(Fuzzy Set),於控制問題處理系統之不確定性之控制方法,具有較佳之適應性及強健性之優勢。 In one embodiment, the fuzzy theory algorithm is a logical method that uses natural language to describe the current state. It uses the characteristics of imprecision and ambiguity in natural language to form a fuzzy set with fuzzy inference. (Fuzzy Set), a control method for controlling the uncertainty of a problem processing system, has the advantages of better adaptability and robustness.

於一實施例中,模糊理論演算法包含下列運算:若xXyY;...(1) In an embodiment, the fuzzy theory algorithm includes the following operations: if x is X, then y is Y ; ... (1)

R n :若x 1及...x i yY n ,n=1,2,...N,i=1,2...I;...(2) R n : if x 1 is And ... x i is Then y is Y n , n = 1,2, ... N , i = 1,2 ... I ; ... (2)

由於模糊條件敘述是用來推理不精確之模型,如上述式子(1)所示,其中「x為X」為前項(Antecedent),「y為Y」為後項(Consequent),XY分別為模糊集合之成員函數(Membership Function)。當模糊推論包含N條規則時,則可表示為上述式子(2),其中x為輸入,y為輸出,I為模糊集合之數量。 Because the fuzzy condition description is used to infer inaccurate models, as shown in the above formula (1), where "x is X " is the former term (Antecedent), "y is Y " is the latter term (Consequent), X and Y Membership functions of fuzzy sets. When fuzzy inference contains N rules, it can be expressed as the above formula (2), where x is the input, y is the output, and I is the number of fuzzy sets.

此外,上述式子(1)~(2)中,符號Rn代表第n個規則,其中符號n的範圍為1至任一自然數N;符號x代表障礙距離值,符號X代表障礙距離值之集合;符號y代表一轉向係數及一行進速度,符號Y代表轉向係數及行進速度的集合;符號i代表第i個集合,其中符號i的範圍為1至任一正整數I。 In addition, in the above formulas (1) to (2), the symbol Rn represents the nth rule, where the range of the symbol n is 1 to any natural number N; the symbol x represents the obstacle distance value, and the symbol X represents the obstacle distance value. The symbol y represents a steering coefficient and a traveling speed, and the symbol Y represents a steering coefficient and a traveling speed; the symbol i represents an i-th collection, where the symbol i ranges from 1 to any positive integer I.

於一實施例中,請參閱第4A~4F圖,第4A~4F圖為根據本案一實施例繪示的一種導航系統100之輸出結果的示意圖。當集合數量為5時(i=1~5),測距模組S1~S5所各自測量的障礙距離值(例如分別表示為SF、SFR、SFL、SR、SL)可以各自對應到符號x 1~x 5;換言之,當符號i為5時,將測距模組S1~S5所各自測量的障礙距離值SF、SFR、SFL、SR(未繪示)、SL(未繪示)的至少其中之一者代入上述運算式子後,可輸出一組轉向係數及行進速度y,此組轉向係數及行進速度y屬於集合Y。其中,轉向係數(例如可表示為符號TCr0)及行進速度(例如可表示為符號Vr0)。須注意的是,本領域具通常知識者應能理解第4A~4F圖僅為一示例,本發明僅需取得障礙距離值SF、SFR、SFL、SR、SL的至少其中之一者,即可對應到轉向係數及/或行進速度,以產生出此些統計圖形的至少其中之一者。 In an embodiment, please refer to FIGS. 4A to 4F. FIGS. 4A to 4F are schematic diagrams of output results of a navigation system 100 according to an embodiment of the present invention. When the number of sets is 5 (i = 1 ~ 5), the obstacle distance values (for example, SF, SFR, SFL, SR, and SL) measured by the ranging modules S1 to S5 can each correspond to the symbol x 1 ~ x 5 ; In other words, when the symbol i is 5, set at least one of the obstacle distance values SF, SFR, SFL, SR (not shown), and SL (not shown) measured by the ranging modules S1 to S5. After one of them is substituted into the above expression, a set of steering coefficients and travel speeds y can be output. This set of steering coefficients and travel speeds y belong to the set Y. Among them, the steering coefficient (for example, can be expressed as a symbol TCr0) and the traveling speed (for example, can be expressed as a symbol Vr0). It should be noted that those with ordinary knowledge in the art should understand that Figures 4A to 4F are only examples, and the present invention only needs to obtain at least one of the obstacle distance values SF, SFR, SFL, SR, and SL. Corresponds to the steering coefficient and / or travel speed to generate at least one of these statistical patterns.

於一實施例中,測距模組S1~S5所各自測量的障礙距離值SF、SFR、SFL、SR、SL代表其各自距離障礙物(例如為牆面BK2)的距離值。 In an embodiment, the obstacle distance values SF, SFR, SFL, SR, and SL measured by the ranging modules S1 to S5 respectively represent the distance values of their respective distances from the obstacle (for example, the wall surface BK2).

例如,於第4A圖中,將測距模組S1測量的多筆障礙距離值SF及測距模組S2測量的多筆障礙距離值SFR代入前述的模糊理論演算法後,可以得到多筆轉向係數TCr0。同理,於第4B圖中,將測距模組S1測量的多筆障礙距離值SF及測距模組S3測量的多筆障礙距離值SFL代入前述的模糊理論演算法後,可以得到多筆轉向係數TCr0。於第4C圖中,將測距模組S3測量的多筆障礙距離值SFL及測距模組S2測量的多筆障礙距離值SFR代入前述的模糊理論演算法後,可以得到多筆轉向係數TCr0。 For example, in FIG. 4A, after the multiple obstacle distance values SF measured by the ranging module S1 and the multiple obstacle distance values SFR measured by the ranging module S2 are substituted into the aforementioned fuzzy theoretical algorithm, multiple turns can be obtained. Coefficient TCr0. Similarly, in FIG. 4B, after the multiple obstacle distance values SF measured by the ranging module S1 and the multiple obstacle distance values SFL measured by the ranging module S3 are substituted into the aforementioned fuzzy theoretical algorithm, multiple strokes can be obtained. Steering coefficient TCr0. In Fig. 4C, after the multiple obstacle distance values SFL measured by the ranging module S3 and the multiple obstacle distance values SFR measured by the ranging module S2 are substituted into the aforementioned fuzzy theoretical algorithm, multiple steering coefficients TCr0 can be obtained. .

又例如,於第4D圖中,將測距模組S1測量的多筆障礙距離值SF及測距模組S2測量的多筆障礙距離值SFR代入前述的模糊理論演算法後,可以得到多筆行進速度Vr0。同理,於第4E圖中,將測距模組S1測量的多筆障礙距離值SF及測距模組S3測量的多筆障礙距離值SFL代入前述的模糊理論演算法後,可以得到多筆行進速度Vr0。於第4F圖中,將測距模組S3測量的多筆障礙距離值SFL及測距模組S2測量的多筆障礙距離值SFR 代入前述的模糊理論演算法後,可以得到多筆行進速度Vr0。 For another example, in FIG. 4D, after the multiple obstacle distance values SF measured by the ranging module S1 and the multiple obstacle distance values SFR measured by the ranging module S2 are substituted into the aforementioned fuzzy theoretical algorithm, multiple strokes can be obtained. Travel speed Vr0. Similarly, in Fig. 4E, after the multiple obstacle distance values SF measured by the ranging module S1 and the multiple obstacle distance values SFL measured by the ranging module S3 are substituted into the aforementioned fuzzy theoretical algorithm, multiple strokes can be obtained. Travel speed Vr0. In Figure 4F, the multiple obstacle distance values SFL measured by the ranging module S3 and the multiple obstacle distance values SFR measured by the ranging module S2 are shown. Substituting the aforementioned fuzzy theory algorithm, multiple travel speeds Vr0 can be obtained.

藉此,處理器10可以藉由將障礙距離值(如障礙距離值SFL、障礙距離值SFL)代入模糊理論演算法,以取得轉向係數TCr0及行進速度Vr0。 Thereby, the processor 10 can obtain the steering coefficient TCr0 and the traveling speed Vr0 by substituting the obstacle distance value (such as the obstacle distance value SFL, the obstacle distance value SFL) into the fuzzy theory algorithm.

於一實施例中,處理器10依據模糊理論演算法所取得的行進速度Vr0及/或轉向係數TCr0代表,當移動機器人150以行進速度Vr0及/或轉向係數TCr0運行時,將可避免碰撞到障礙物。 In an embodiment, the traveling speed Vr0 and / or steering coefficient TCr0 obtained by the processor 10 according to the fuzzy theory algorithm represents that when the mobile robot 150 runs at the traveling speed Vr0 and / or the steering coefficient TCr0, collisions can be avoided. obstacle.

此外,處理器10可以透過讀取馬達轉速或其他已知定位方法以得知移動機器人150之當前的轉向係數及當前的行進速度,並依據當前的轉向係數及當前的行進速度以判斷目前移動機器人150在靠近障礙物空間(如房門)時,是否行進路線過於偏右或偏左,接著再將當前的轉向係數及當前的行進速度調整為行進速度Vr0及/或轉向係數TCr0,以避免碰撞到障礙物。 In addition, the processor 10 can learn the current steering coefficient and the current travel speed of the mobile robot 150 by reading the motor speed or other known positioning methods, and determine the current mobile robot based on the current steering coefficient and the current travel speed. 150 When approaching the obstacle space (such as the door of the house), whether the travel route is too right or left, and then adjust the current steering coefficient and current travel speed to the travel speed Vr0 and / or the steering coefficient TCr0 to avoid collision To obstacles.

以下詳述將當前的轉向係數及當前的行進速度調整為行進速度Vr0及/或轉向係數TCr0的實施例。為使敘述方便,下述將以障礙距離值SFR及障礙距離值SFL為例子作為說明,並將障礙距離值SFR定義為偏右距離值,將障礙距離值SFL定義為偏左距離值。 Hereinafter, an embodiment in which the current steering coefficient and the current traveling speed are adjusted to the traveling speed Vr0 and / or the steering coefficient TCr0 will be described in detail. For the convenience of description, the obstacle distance value SFR and the obstacle distance value SFL are taken as examples in the following description, and the obstacle distance value SFR is defined as a rightward distance value, and the obstacle distance value SFL is defined as a leftward distance value.

請一併參閱第5A~5B、6A~6B、7A~7B及8A~8B圖,第5A、6A、7A及8A圖為根據本案一實施例繪示的一種導航方法的參數對應關係之示意圖。第5B、6B、7B及8B圖為根據本案一實施例繪示的一種導航系統的操作行為之示意圖。於此些圖中,係以障礙距離值SFR障礙距離值SFL及轉向係數TCr0為例,然本案並不限於此,亦可藉由相似方式結合或基於其他障礙距離值SF、SR、SL,以取得移動機器人150的行進速度Vr0及/或轉向係數TCr0,例如,亦可實施為將障礙距離值SR定義為偏右距離值,將障礙距離值SF定義為偏左距離值,藉由此些資訊以調整當前的行進速度及/或轉向係數,以達到目標的行進速度Vr0及/或轉向係數TCr0。 Please refer to FIGS. 5A to 5B, 6A to 6B, 7A to 7B, and 8A to 8B together. FIGS. 5A, 6A, 7A, and 8A are schematic diagrams of parameter correspondences of a navigation method according to an embodiment of the present invention. 5B, 6B, 7B, and 8B are schematic diagrams of an operation behavior of a navigation system according to an embodiment of the present invention. In these figures, the obstacle distance value SFR, the obstacle distance value SFL, and the steering coefficient TCr0 are taken as examples. However, this case is not limited to this, and can be combined in a similar manner or based on other obstacle distance values SF, SR, and SL. The travel speed Vr0 and / or the steering coefficient TCr0 of the mobile robot 150 is obtained. For example, it can also be implemented to define the obstacle distance value SR as a rightward distance value and the obstacle distance value SF as a leftward distance value. To adjust the current travel speed and / or steering coefficient to achieve the target travel speed Vr0 and / or steering coefficient TCr0.

此外,於第5A~5B、6A~6B、7A~7B及8A~8B圖中所繪示的導航系統100與第1A圖所繪示的導航系統100相同,故細節處不再贅述及繪示之。 In addition, the navigation system 100 shown in FIGS. 5A to 5B, 6A to 6B, 7A to 7B, and 8A to 8B is the same as the navigation system 100 shown in FIG. 1A, so the details will not be described again. Of it.

於一實施例中,處理器10判斷偏右距離值及偏左距離值的大小,以得知當導航系統100行經狹小的障礙空間時(如房門),較偏向此房門的右牆BK1或左牆BK2,以進行對應的轉向或速度的調整,避免移動機器人150碰撞到障礙物(如右牆BK1或左牆BK2)。 In an embodiment, the processor 10 determines the magnitude of the rightward distance value and the leftward distance value to know that when the navigation system 100 travels through a small obstacle space (such as a door), it is more inclined to the right wall BK1 of the door. Or the left wall BK2 to adjust the corresponding steering or speed to prevent the mobile robot 150 from colliding with an obstacle (such as the right wall BK1 or the left wall BK2).

於一實施例中,如第5A~5B圖所示,於範圍r1中,當處理器10判斷偏右距離值SFR小於偏左距離值SFL時,代表移動機器人150與右邊障礙物的距離較短,而與左邊障礙物的距離較長,故可判斷移動機器人150較靠近右側。於一實施例中,當偏右距離值小於偏左距離值,則進入步驟350。於步驟350中,處理器10控制移動機器人150執行第一行為。其中,第一行為係指移動機器人150往左前方向前進(如第5B圖所示之方向b)。 In an embodiment, as shown in FIGS. 5A to 5B, in the range r1, when the processor 10 determines that the rightward distance value SFR is smaller than the leftward distance value SFL, it means that the distance between the mobile robot 150 and the right obstacle is shorter. Since the distance from the obstacle on the left is longer, it can be determined that the mobile robot 150 is closer to the right. In an embodiment, when the rightward distance value is smaller than the leftward distance value, the process proceeds to step 350. In step 350, the processor 10 controls the mobile robot 150 to perform a first action. Among them, the first action means that the mobile robot 150 moves forward in the leftward direction (direction b as shown in FIG. 5B).

基於類似概念,於另一實施例中,當偏右距離值大於偏左距離值時,代表移動機器人150與左邊障礙物的距離較短,而與右邊障礙物的距離較長,故可判斷移動機器人150較靠近左側。則進入步驟360。於步驟360中,處理器10控制移動機器人150執行第二行為。其中,第二行為係指移動機器人150往右前方向前進。 Based on similar concepts, in another embodiment, when the rightward distance value is greater than the leftward distance value, it means that the distance between the mobile robot 150 and the obstacle on the left is shorter, and the distance from the obstacle on the right is longer, so it can be judged that it is moving The robot 150 is closer to the left. Go to step 360. In step 360, the processor 10 controls the mobile robot 150 to perform a second behavior. Among them, the second behavior means that the mobile robot 150 advances in the forward right direction.

於一實施例中,如第6A~6B圖所示,於範圍r2中,當處理器10判斷偏右距離值SFR小於偏左距離值SFL時,處理器10將偏左距離值與偏右距離值相減,以取得一差值,並判斷差值是否大於一差值門檻值(差值門檻值例如為5公分,若大於差值門檻值代表移動機器人150離右側過近),若判斷差值大於差值門檻值,則處理器10控制移動機器人150執行的第一行為為移動機器人150依 據一第一轉向係數(如第5B圖之方向b,第一轉向係數假設為0.8,代表往左轉的程度較大)往左前方向前進,若判斷差值不大於差值門檻值,則處理器10控制移動機器人150執行的第一行為為移動機器人150依據一第二轉向係數(如第6B圖之方向c,第二轉向係數假設為0.3,代表往左轉的程度較小)往左前方向前進;其中,第一轉向係數的絕對值大於第二轉向係數的絕對值。 In an embodiment, as shown in FIGS. 6A to 6B, in the range r2, when the processor 10 determines that the rightward distance value SFR is smaller than the leftward distance value SFL, the processor 10 sets the leftward distance value and the rightward distance Subtract the values to obtain a difference and determine whether the difference is greater than a difference threshold (for example, the difference threshold is 5 cm; if it is greater than the difference threshold, the mobile robot 150 is too close to the right side). If the value is greater than the difference threshold, the first action performed by the processor 10 to control the mobile robot 150 is for the mobile robot 150 to According to a first steering coefficient (such as direction b in FIG. 5B, the first steering coefficient is assumed to be 0.8, which means that the degree of turning to the left is greater). Moving forward in the leftward direction. The first action performed by the controller 10 to control the mobile robot 150 is to move the mobile robot 150 forward to the left according to a second steering coefficient (such as the direction c in FIG. 6B. The second steering coefficient is assumed to be 0.3, which means that the degree of turning left is small) Moving forward; wherein the absolute value of the first steering coefficient is greater than the absolute value of the second steering coefficient.

藉此,當移動機器人150過於偏向右側障礙物時,處理器10控制移動機器人150以較大的左轉角度(即轉向係數的絕對值較大)往左邊旋轉,避免發生碰撞;當移動機器人150僅為微偏向右側障礙物時,處理器10控制移動機器人150以較小的左轉角度(即轉向係數的絕對值較小)往左邊旋轉,以微調路徑。 By this, when the mobile robot 150 is biased too far toward the right obstacle, the processor 10 controls the mobile robot 150 to rotate to the left at a large left-turn angle (that is, the absolute value of the steering coefficient is large) to avoid collision; when the mobile robot 150 When the obstacle is only slightly deviated to the right, the processor 10 controls the mobile robot 150 to rotate to the left at a small left-turn angle (that is, the absolute value of the steering coefficient is small) to fine-tune the path.

基於類似概念,於另一實施例中,當偏右距離值SFR大於偏左距離值SFL時,處理器10將偏右距離值SFR與偏左距離值SFL相減,以取得一差值,並判斷差值是否大於一差值門檻值(大於差值門檻值代表移動機器人150離左側過近),若判斷差值大於差值門檻值,則處理器10控制移動機器人150執行的第二行為為移動機器人150依據一第一轉向係數(第一轉向係數假設為-0.8)往右前方向前進,若判斷差值不大於差值門檻值,則處 理器10控制移動機器人150執行的第二行為為移動機器人150依據一第二轉向係數(第二轉向係數假設為-0.3)往右前方向前進;其中,第一轉向係數的絕對值大於第二轉向係數的絕對值。 Based on similar concepts, in another embodiment, when the rightward distance value SFR is greater than the leftward distance value SFL, the processor 10 subtracts the rightward distance value SFR and the leftward distance value SFL to obtain a difference, and Determine whether the difference is greater than a difference threshold (a value greater than the difference threshold indicates that the mobile robot 150 is too close to the left side). If it is determined that the difference is greater than the difference threshold, the second behavior that the processor 10 controls the mobile robot 150 to perform is The mobile robot 150 advances to the right forward direction according to a first steering coefficient (the first steering coefficient is assumed to be -0.8). If it is determined that the difference is not greater than the difference threshold, the processing is performed. The second behavior performed by the processor 10 to control the mobile robot 150 is that the mobile robot 150 advances in the forward right direction according to a second steering coefficient (the second steering coefficient is assumed to be -0.3); wherein the absolute value of the first steering coefficient is greater than the second steering The absolute value of the coefficient.

藉此,當移動機器人150過於偏向左側障礙物時,處理器10控制移動機器人150以較大的右轉角度往右邊旋轉,避免發生碰撞;當移動機器人150僅為微偏向左側障礙物時,處理器10控制移動機器人150以較小的右轉角度往右邊旋轉,以微調路徑。 By this, when the mobile robot 150 is too far to the left obstacle, the processor 10 controls the mobile robot 150 to rotate to the right with a large right turn angle to avoid collision; when the mobile robot 150 is only slightly inclined to the left obstacle, the processing The controller 10 controls the mobile robot 150 to rotate to the right at a small right-turning angle to fine-tune the path.

於一實施例中,如第7A~7B圖所示,於範圍r3中,當處理器10判斷偏右距離值SFR等於偏左距離值SFL時,代表移動機器人150目前是往正前方方向d前進,因此進入步驟370。於步驟370中,處理器10控制移動機器人150執行第三行為。其中,第三行為係指移動機器150人往前方前進。 In an embodiment, as shown in FIGS. 7A to 7B, in the range r3, when the processor 10 determines that the rightward distance value SFR is equal to the leftward distance value SFL, it represents that the mobile robot 150 is currently moving in the forward direction d. , So proceed to step 370. In step 370, the processor 10 controls the mobile robot 150 to perform a third behavior. Among them, the third behavior means that 150 people move the machine forward.

於一實施例中,如第8A~8B圖所示,於範圍r4中,代表移動機器人150往方向e直行前進。於此例中,移動機器人150已安全且無碰撞地經過航點WP。 In an embodiment, as shown in Figs. 8A to 8B, in the range r4, the mobile robot 150 goes straight in the direction e. In this example, the mobile robot 150 has passed the waypoint WP safely and without collision.

綜上,本案藉由航點的設置,能使導航系統偵測移動機器人將要移動到航點時,可推斷移動機器人將移動到較狹小的空間位置,此時,導航系統可透過模糊理論演算法以取得移動機器人 目標的行進速度及轉向係數,當移動機器人依據此行進速度及轉向係數移動時,可避免碰撞到障礙物,因此,可依據行進速度及轉向係數以調整移動機器人移動行為,以達到避免移動機器人碰撞到障礙物的效果。 In summary, the waypoint setting enables the navigation system to detect when the mobile robot is about to move to the waypoint, and it can be inferred that the mobile robot will move to a narrower space position. At this time, the navigation system can use fuzzy theory algorithms. To get a mobile robot The target's travel speed and steering coefficient. When the mobile robot moves according to this travel speed and steering coefficient, it can avoid collision with obstacles. Therefore, the mobile robot's movement behavior can be adjusted according to the travel speed and steering coefficient to avoid the mobile robot collision. Effect to obstacles.

雖然本案已以實施例揭露如上,然其並非用以限定本案,任何熟習此技藝者,在不脫離本案之精神和範圍內,當可作各種之更動與潤飾,因此本案之保護範圍當視後附之申請專利範圍所界定者為準。 Although this case has been disclosed as above with examples, it is not intended to limit this case. Any person skilled in this art can make various modifications and retouches without departing from the spirit and scope of this case. Therefore, the scope of protection of this case should be considered after The attached application patent shall prevail.

Claims (16)

一種導航系統,應用於一電子裝置,該導航系統包含:一處理器,用以依據一導航路徑以控制該電子裝置的一移動方向,並取得一空間資訊,依據該空間資訊設置一航點;以及複數個測距模組,分別用以測量該電子裝置與該航點的一航點距離值;其中,當該處理器判斷該航點距離值小於一航點門檻值時,該處理器根據由該些測距模組取得的複數個障礙距離值,將該些障礙距離值代入一模糊理論演算法後計算出一第一距離值及一第二距離值,當該第一距離值小於該第二距離值,則該處理器控制該電子裝置執行一第一行為,當該第一距離值大於該第二距離值,則該處理器控制該電子裝置執行一第二行為,當該第一距離值等於該第二距離值,則該處理器控制該電子裝置執行一第三行為,其中,該模糊理論演算法包含下列運算:若xXyYR n :若x 1及...x i yY n ,n=1,2,...N,i=1,2...I;其中,符號Rn代表第n個規則,其中符號n的範圍為1至任一自然數N;符號x代表該些障礙距離值,符號X代表該些障礙距離值之集合;符號y代表一轉向係數及一行進速度,符號Y代表該轉向係數及該行進速度的集合;符號i代表第i個集 合,其中符號i的範圍為1至任一正整數I。 A navigation system applied to an electronic device. The navigation system includes: a processor for controlling a moving direction of the electronic device according to a navigation path, obtaining a spatial information, and setting a waypoint according to the spatial information; And a plurality of ranging modules for measuring a waypoint distance value between the electronic device and the waypoint; wherein when the processor judges that the waypoint distance value is less than a waypoint threshold value, the processor determines The plurality of obstacle distance values obtained by the ranging modules are substituted into a fuzzy theory algorithm to calculate a first distance value and a second distance value. When the first distance value is less than the For a second distance value, the processor controls the electronic device to perform a first behavior. When the first distance value is greater than the second distance value, the processor controls the electronic device to perform a second behavior. The distance value is equal to the second distance value, the processor controls the electronic device to perform a third behavior, wherein the fuzzy theory algorithm includes the following operations: if x is X, then y is Y ; R n : if x 1 is And ... x i is Then y is Y n , n = 1,2, ... N , i = 1,2 ... I ; where the symbol R n represents the nth rule, where the range of the symbol n is 1 to any natural number N; the symbol x represents the obstacle distance values, the symbol X represents the collection of the obstacle distance values; the symbol y represents a steering coefficient and the traveling speed, and the symbol Y represents the steering coefficient and the traveling speed; the symbol i represents the first i sets, where the symbol i ranges from 1 to any positive integer I. 如請求項1所述之導航系統,更包含:一儲存模組,用以儲存一地圖資訊;其中,該處理器依據該地圖資訊設置該導航路徑及取得該空間資訊,且該空間資訊包含至少一障礙物位置。 The navigation system according to claim 1, further comprising: a storage module for storing a map information; wherein the processor sets the navigation path and obtains the spatial information according to the map information, and the spatial information includes at least An obstacle position. 如請求項2所述之導航系統,其中,該處理器更依據該至少一障礙物位置設置一障礙空間起點及一障礙空間終點,並設置該航點於該障礙空間起點及該障礙空間終點之間;其中,當該處理器判斷該電子裝置位於該障礙空間起點時,該處理器控制該電子裝置以一第一行進速度前進;其中,當該處理器判斷該電子裝置行經該航點後且於該電子裝置抵達該障礙空間終點時,該處理器控制該電子裝置以一第二行進速度前進;其中,該第一行進速度低於該第二行進速度。 The navigation system according to claim 2, wherein the processor further sets an obstacle space start point and an obstacle space end point according to the at least one obstacle position, and sets the waypoint between the obstacle space start point and the obstacle space end point. Among them, when the processor determines that the electronic device is located at the starting point of the obstacle space, the processor controls the electronic device to advance at a first traveling speed; wherein when the processor determines that the electronic device passes the waypoint and When the electronic device reaches the end of the obstacle space, the processor controls the electronic device to advance at a second traveling speed; wherein the first traveling speed is lower than the second traveling speed. 如請求項1所述之導航系統,其中,該些測距模組分別設置於該電子裝置內部的一前側、一左側、一右側、一左前側及一右前側。 The navigation system according to claim 1, wherein the ranging modules are respectively disposed on a front side, a left side, a right side, a left front side, and a right front side inside the electronic device. 如請求項2所述之導航系統,其中,該些障礙距離值為該電子裝置與該至少一障礙物位置之一距離。 The navigation system according to claim 2, wherein the obstacle distance values are a distance between the electronic device and the at least one obstacle position. 如請求項1所述之導航系統,其中,該第一行為係指該電子裝置往左前方向前進,該第二行為係指該電子裝置往右前方向前進,該第三行為係指該電子裝置往前方前進。 The navigation system according to claim 1, wherein the first behavior refers to the electronic device moving forward and left, the second behavior refers to the electronic device moving forward and right, and the third behavior refers to the electronic device. Move forward. 如請求項1所述之導航系統,其中,當該第一距離值小於該第二距離值時,該處理器將該第二距離值與該第一距離值相減,以取得一第一差值,並判斷該第一差值是否大於一差值門檻值,若判斷該第一差值大於該差值門檻值,則該電子裝置執行的第一行為為該電子裝置依據一第一轉向係數往左前方向前進,若判斷該第一差值不大於該差值門檻值,則該電子裝置執行的第一行為為該電子裝置依據一第二轉向係數往左前方向前進;其中,該第一轉向係數的絕對值大於該第二轉向係數的絕對值。 The navigation system according to claim 1, wherein when the first distance value is smaller than the second distance value, the processor subtracts the second distance value from the first distance value to obtain a first difference And determine whether the first difference is greater than a difference threshold. If it is determined that the first difference is greater than the difference threshold, the first behavior performed by the electronic device is that the electronic device is based on a first steering coefficient. Moving forward in the leftward direction, if it is determined that the first difference is not greater than the difference threshold, the first behavior performed by the electronic device is that the electronic device moves forward in the leftward direction according to a second steering coefficient; wherein the first turning The absolute value of the coefficient is greater than the absolute value of the second steering coefficient. 如請求項1所述之導航系統,其中,當該第一距離值大於該第二距離值時,該處理器將該第一距離值與該第二距離值相減,以取得一第一差值,並判斷該第一差值是否大於一差值門檻值, 若判斷該第一差值大於該差值門檻值,則該處理器控制該電子裝置執行的該第二行為為該電子裝置依據一第一轉向係數往右前方向前進,若判斷該第一差值不大於該差值門檻值,則該處理器控制該電子裝置執行的該第二行為為該電子裝置依據一第二轉向係數往右前方向前進;其中,該第一轉向係數的絕對值大於該第二轉向係數的絕對值。 The navigation system according to claim 1, wherein when the first distance value is greater than the second distance value, the processor subtracts the first distance value from the second distance value to obtain a first difference Value, and determine whether the first difference is greater than a difference threshold, If it is determined that the first difference value is greater than the difference threshold value, the processor controls the second behavior performed by the electronic device as the electronic device advances to the right forward direction according to a first steering coefficient. If the first difference value is determined Not greater than the difference threshold, the second behavior that the processor controls the electronic device to perform is that the electronic device proceeds to the right forward direction according to a second steering coefficient; wherein the absolute value of the first steering coefficient is greater than the first steering coefficient The absolute value of the second steering coefficient. 一種導航方法,包含:取得一空間資訊,依據該空間資訊設置一航點;測量一電子裝置與該航點的一航點距離值;判斷該航點距離值是否小於一航點門檻值;當判斷該航點距離值小於一航點門檻值時,一處理器根據由複數個測距模組取得的複數個障礙距離值,將該些障礙距離值代入一模糊理論演算法後計算出一第一距離值及一第二距離值以取得該第一距離值及該第二距離值,當該第一距離值小於該第二距離值,則該處理器控制該電子裝置執行一第一行為,當該第一距離值大於該第二距離值,則該處理器控制該電子裝置執行一第二行為,當該第一距離值等於該第二距離值,則該處理器控制該電子裝置執行一第三行為,其中,該模糊理論演算法包含下列運算: 若xXyYR n :若x 1及...x i yY n ,n=1,2,...N,i=1,2...I;其中,符號Rn代表第n個規則,其中符號n的範圍為1至任一自然數N;符號x代表該些障礙距離值,符號X代表該些障礙距離值之集合;符號y代表一轉向係數及一行進速度,符號Y代表該轉向係數及該行進速度的集合;符號i代表第i個集合,其中符號i的範圍為1至任一正整數I。 A navigation method includes: obtaining a space information, setting a waypoint according to the space information; measuring a waypoint distance value between an electronic device and the waypoint; determining whether the waypoint distance value is less than a waypoint threshold; when When determining that the waypoint distance value is less than a waypoint threshold value, a processor calculates a number of obstacle distance values into a fuzzy theory algorithm based on a plurality of obstacle distance values obtained by a plurality of ranging modules. A distance value and a second distance value to obtain the first distance value and the second distance value; when the first distance value is less than the second distance value, the processor controls the electronic device to perform a first behavior, When the first distance value is greater than the second distance value, the processor controls the electronic device to perform a second behavior. When the first distance value is equal to the second distance value, the processor controls the electronic device to perform a second behavior. The third behavior, in which the fuzzy theory algorithm includes the following operations: if x is X, then y is Y ; R n : if x 1 is And ... x i is Then y is Y n , n = 1,2, ... N , i = 1,2 ... I ; where the symbol R n represents the nth rule, where the range of the symbol n is 1 to any natural number N; the symbol x represents the obstacle distance values, the symbol X represents the collection of the obstacle distance values; the symbol y represents a steering coefficient and the traveling speed, and the symbol Y represents the steering coefficient and the traveling speed; the symbol i represents the first i sets, where the symbol i ranges from 1 to any positive integer I. 如請求項9所述之導航方法,更包含:藉由一儲存模組以儲存一地圖資訊;其中,該處理器依據該地圖資訊以設置一導航路徑及取得該空間資訊,且該空間資訊包含至少一障礙物位置。 The navigation method according to claim 9, further comprising: storing a map information by a storage module; wherein the processor sets a navigation path and obtains the spatial information according to the map information, and the spatial information includes At least one obstacle position. 如請求項10所述之導航方法,更包含:依據該至少一障礙物位置以設置一障礙空間起點及一障礙空間終點,並設置該航點於該障礙空間起點及該障礙空間終點之間;以及藉由該處理器判斷該電子裝置是否位於該障礙空間起點;其中,當該處理器判斷該電子裝置位於該障礙空間起點時,該處理器控制該電子裝置以一第一行 進速度前進;其中,當該處理器判斷該電子裝置行經該航點後且於該電子裝置抵達該障礙空間終點時,該處理器控制該電子裝置以一第二行進速度前進;其中,該第一行進速度低於該第二行進速度。 The navigation method according to claim 10, further comprising: setting an obstacle space start point and an obstacle space end point according to the at least one obstacle position, and setting the waypoint between the obstacle space start point and the obstacle space end point; And determining whether the electronic device is located at the beginning of the obstacle space by the processor; wherein, when the processor determines that the electronic device is located at the beginning of the obstacle space, the processor controls the electronic device to Advancing speed; wherein, when the processor determines that the electronic device has passed the waypoint and after the electronic device reaches the end of the obstacle space, the processor controls the electronic device to proceed at a second traveling speed; wherein, the first The traveling speed is lower than the second traveling speed. 如請求項9所述之導航方法,其中,該些測距模組分別設置於該電子裝置內部的一前側、一左側、一右側、一左前側及一右前側。 The navigation method according to claim 9, wherein the ranging modules are respectively disposed on a front side, a left side, a right side, a left front side, and a right front side inside the electronic device. 如請求項10所述之導航方法,其中,該些障礙距離值為該電子裝置與該至少一障礙物位置之一距離。 The navigation method according to claim 10, wherein the obstacle distance values are a distance between the electronic device and the at least one obstacle position. 如請求項9所述之導航方法,其中,該第一行為係指該電子裝置往左前方向前進,該第二行為係指該電子裝置往右前方向前進,該第三行為係指該電子裝置往前方前進。 The navigation method according to claim 9, wherein the first behavior refers to the electronic device moving forward left, the second behavior refers to the electronic device moving forward right, and the third behavior refers to the electronic device moving forward. Move forward. 如請求項9所述之導航方法,其中當該第一距離值小於該第二距離值,則該處理器控制該電子裝置執行該第一行為的步驟包含:當該第一距離值小於該第二距離值時,該處理器將該第二距離值與該第一距離值相減,以取得一第一差值,並判斷該第一差值是否大於一差值門檻 值,若判斷該第一差值大於該差值門檻值,則控制該電子裝置依據一第一轉向係數往左前方向前進,若判斷該第一差值不大於該差值門檻值,則控制該電子裝置依據一第二轉向係數往左前方向前進;其中,該第一轉向係數的絕對值大於該第二轉向係數的絕對值。 The navigation method according to claim 9, wherein when the first distance value is less than the second distance value, the step of the processor controlling the electronic device to perform the first behavior includes: when the first distance value is less than the first distance value When there are two distance values, the processor subtracts the second distance value from the first distance value to obtain a first difference value, and determines whether the first difference value is greater than a difference threshold. Value, if it is judged that the first difference value is greater than the difference threshold value, the electronic device is controlled to move forward and left according to a first steering coefficient; if it is judged that the first difference value is not greater than the difference threshold value, the control is controlled The electronic device moves forward in the leftward direction according to a second steering coefficient; wherein the absolute value of the first steering coefficient is greater than the absolute value of the second steering coefficient. 如請求項9所述之導航方法,其中當該第一距離值大於該第二距離值,則該處理器控制該電子裝置執行該第二行為的步驟包含:當該第一距離值大於該第二距離值時,該處理器將該第一距離值與該第二距離值相減,以取得一第一差值,並判斷該第一差值是否大於一差值門檻值,若判斷該第一差值大於該差值門檻值,則控制該電子裝置依據一第一轉向係數往右前方向前進,若判斷該第一差值不大於該差值門檻值,則控制該電子裝置依據一第二轉向係數往右前方向前進;其中,該第一轉向係數的絕對值大於該第二轉向係數的絕對值。 The navigation method according to claim 9, wherein when the first distance value is greater than the second distance value, the step of the processor controlling the electronic device to perform the second behavior includes: when the first distance value is greater than the first distance value When there are two distance values, the processor subtracts the first distance value from the second distance value to obtain a first difference value, and determines whether the first difference value is greater than a difference threshold value. If a difference value is greater than the difference threshold value, the electronic device is controlled to proceed to the right forward direction according to a first steering coefficient. If it is determined that the first difference value is not greater than the difference threshold value, the electronic device is controlled according to a second The steering coefficient moves forward in the rightward direction; wherein the absolute value of the first steering coefficient is greater than the absolute value of the second steering coefficient.
TW106110187A 2016-05-23 2017-03-27 Navigation system and navigation method TWI621834B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662340480P 2016-05-23 2016-05-23
US62/340,480 2016-05-23

Publications (2)

Publication Number Publication Date
TW201741626A TW201741626A (en) 2017-12-01
TWI621834B true TWI621834B (en) 2018-04-21

Family

ID=60423725

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106110187A TWI621834B (en) 2016-05-23 2017-03-27 Navigation system and navigation method

Country Status (2)

Country Link
CN (1) CN107421538B (en)
TW (1) TWI621834B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI759051B (en) * 2020-12-31 2022-03-21 創科智盈科技有限公司 Self-propelled device and automatic return method thereof

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108873899B (en) * 2018-06-27 2022-03-25 杨扬 Obstacle avoidance method of dust collection robot
CN109798901B (en) * 2019-03-18 2022-08-12 国网江苏省电力有限公司电力科学研究院 Robot for files and navigation positioning system and navigation positioning method thereof
CN112067044A (en) * 2020-08-25 2020-12-11 五邑大学 Environment detection method, system and equipment based on three-dimensional map reconstruction
EP4318162A4 (en) * 2022-05-23 2024-06-12 Beijing Xiaomi Robot Technology Co., Ltd. Mobile device and speed control method and apparatus therefor, and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954962A (en) * 1988-09-06 1990-09-04 Transitions Research Corporation Visual navigation and obstacle avoidance structured light system
CN100568144C (en) * 2008-09-04 2009-12-09 湖南大学 Mobile robot's multirow is for merging automatic navigation method under a kind of circumstances not known
TWI481980B (en) * 2012-12-05 2015-04-21 Univ Nat Chiao Tung Electronic apparatus and navigation method thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5942869A (en) * 1997-02-13 1999-08-24 Honda Giken Kogyo Kabushiki Kaisha Mobile robot control device
US7801644B2 (en) * 2006-07-05 2010-09-21 Battelle Energy Alliance, Llc Generic robot architecture
CN100554877C (en) * 2008-02-19 2009-10-28 哈尔滨工程大学 A kind of real-time binocular vision guidance method towards underwater research vehicle

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954962A (en) * 1988-09-06 1990-09-04 Transitions Research Corporation Visual navigation and obstacle avoidance structured light system
CN100568144C (en) * 2008-09-04 2009-12-09 湖南大学 Mobile robot's multirow is for merging automatic navigation method under a kind of circumstances not known
TWI481980B (en) * 2012-12-05 2015-04-21 Univ Nat Chiao Tung Electronic apparatus and navigation method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI759051B (en) * 2020-12-31 2022-03-21 創科智盈科技有限公司 Self-propelled device and automatic return method thereof

Also Published As

Publication number Publication date
TW201741626A (en) 2017-12-01
CN107421538A (en) 2017-12-01
CN107421538B (en) 2020-09-11

Similar Documents

Publication Publication Date Title
TWI621834B (en) Navigation system and navigation method
US10353400B2 (en) Navigation system and navigation method
US9155675B2 (en) Portable robotic device
US8903160B2 (en) Apparatus and method with traveling path planning
EP3611589B1 (en) Method for controlling motion of robot based on map prediction
Tian et al. RGB-D based cognitive map building and navigation
CN106708059A (en) Channel selection-based real-time motion planning method for mobile robot
WO2016067640A1 (en) Autonomous moving device
Kaufman et al. Autonomous exploration by expected information gain from probabilistic occupancy grid mapping
CN204423154U (en) A kind of automatic charging toy robot based on independent navigation
CN114610042A (en) Robot path dynamic planning method and device and robot
Truong et al. Dynamic social zone for human safety in human-robot shared workspaces
Umam et al. Obstacle avoidance based on stereo vision navigation system for omni-directional robot
CN206833252U (en) A kind of mobile electronic device
CN112033423B (en) Robot path planning method and device based on road consensus and robot
JP2022541736A (en) Mobile robot and its control method
Khan et al. Sonar-based SLAM using occupancy grid mapping and dead reckoning
JP7360792B2 (en) Mobile object, learning device, and learning device manufacturing method
Vukosavljev et al. Mobile robot control using combined neural-fuzzy and neural network
Saeed et al. PID Controller Enhanced A* Algorithm for Efficient Water Boat.
Siemiatkowska et al. Cellular neural networks for navigation of a mobile robot
Yuan et al. A line extraction algorithm for mobile robot using sonar sensor
CA2870275C (en) Apparatus and method for determining reference elements of an environment
Sanchez et al. Autonomous navigation with deadlock detection and avoidance
Tai et al. Decentralized EIF-based global localization using dead-Reckoning, KINECT and laser scanning for autonomous omnidirectional mobile robot