i TÓM TẮT ĐỀ TÀI Robot hai bánh tự cân bằng là một đối tượng có tính phi tuyến cao và tương đối không ổn định. Vì vậy, ta phải có một phương pháp điều khiển mới để đưa hệ thống robot hai bánh về vị trí cân bằng mong muốn. Một trong những phương pháp được ứng dụng vào điều khiển đó chính là FuzzyPID. Với ưu điểm hệ thống cơ khí không quá phức tạp, robot hai bánh tự cân bằng được sử dụng rộng rãi trong việc giảng dạy và nghiên cứu lý thuyết điều khiển tự động cũng như xây dựng các bộ điều khiển số. Hệ thống bao gồm: hai bánh xe được gắn vào bệ của robot và kết nối với hai động cơ DC thông qua bộ truyền đai, bệ của robot được gắn với thân của robot tượng trưng cho thanh quay của con lắc ngược. Cảm biến Gyro86 được sử dụng để tính góc xoay để đảm bảo thân của robot xoay trục của động cơ. Ta phải điều khiển để thân robot có thể cân bằng ở một vị trí cân bằng cho phép. Mục tiêu của đề tài là xây dựng bộ điều khiển FuzzyPID với luật điều khiển MaxMin để điều khiển đối tượng có độ phi tuyến này được ổn định. Luật điều khiển này sẽ được mô phỏng bằng Matlab Simulink và được kiểm nghiệm trên nền vi điều khiển CortexM4F. Ưu điểm khi sử dụng CortexM4F để thực thi bộ điều khiển là: giá thành rẻ, sử dụng linh hoạt và dễ dàng ứng dụng vào thực tế khi được thương mại hóa. Cảm biến sử dụng Gyro giá rẻ nhưng vẫn đáp ứng được những yêu cầu đưa ra.ii ABSTRACT Twowheeled selfbalancing robot is an object of high nonlinearity and relatively unstable. Therefore, we must have a new control method to give twowheeled robotic system for the location of the desired balance. One of the methods to be applied to control FuzzyPID that is. With mechanical advantage system is not too complicated, twowheeled selfbalancing robot is widely used in teaching and research control theory as well as the construction of digital controllers. The system includes: two wheels are attached to the base of the robot and connected to two DC motors through belt driven, the base of the robot is attached to the body of the robots rotation represents the inverted pendulum rod. Gyro86 sensor is used to calculate the rotation angel of the robot body to ensure the rotation of the motor shaft. Thus the body of the robot will orbit relative around the motor shaft. We have to control the robot to be able to balance itself in a position to balance allows. The objective of the project is to build FuzzyPID controller with MaxMin control law to control objects nonlinearity is stable. This control law will be simulated by matlab simulink and tested on the CortexM4F microcontroller. Advantages when using the CortexM4F to execute the controller are: low cost, flexible use and easy application into commercial reality when variables used Gyro sensor price cheap but still meet the request madeiii Lời cảm ơn Nhóm không thể theo đuổi và hoàn thành đề tài của luận văn tốt nghiệp trong vòng 16 tuần nếu không có sự giúp đỡ của những người thân và bạn bè xung quanh. Do vậy, với trân trọng và cảm kích, nhóm xin gửi lời cảm ơn đến thầy cô, những người thân trong gia đình và bạn bè xung quanh đã chăm sóc, an ủi khi gặp trở ngại và động viên nhóm để thực hiện luận văn. Lời cảm ơn đầu tiên, tôi xin chân thành gửi đến Cô Nguyễn Trần Minh Nguyệt người đã tận tình hướng dẫn và truyền đạt các kiến thức giúp tôi hoàn thành luận văn này. Điều quan trọng nhất là Th.S Nguyễn Trần Minh Nguyệt hướng nhóm tìm được con đường nghiên cứu các thuật toán mới có tính ứng dụng cao ngoài thực tiễn, và rất phù hợp với sở thích và niềm đam mê của tôi. Bên cạnh đó, tôi xin chân thành gửi lời cảm ơn đến quý thầy cô trong bộ môn Điều Khiển Tự Động: thầy Nguyễn Minh Tâm, cô Nguyễn Trần Minh Nguyệt, thầy Lê Chí Kiên, thầy Trương Đình Nhơn và thầy Nguyễn Đình Phú,… đã cho nhóm các kiến thức rất bổ ích và quý giá trong quá trình học tập để ứng dụng vào nghiên cứu và phát triển đề tài này cũng như ứng dụng vào công việc sau này. Tôi cũng xin chân thành gửi lời cảm ơn đến tất cả các bạn đại học khóa 2012 đã động viên, giúp đỡ, trao đổi kiến thức với nhau trong suốt khóa học. Cuối cùng, tôi xin chân thành cảm ơn sự quan tâm, hỗ trợ, tạo điều kiện và động viên về vật chất lẫn tinh thần của các thành viên trong gia đình trong suốt thời gian qua. Tp.HCM, ngày 19 tháng 07 năm 2016. Nhóm thực hiện đề tài Nguyễn Tấn An Lê Minh Tríiv DANH MỤC CÁC TỪ VIẾT TẮT PID: ProportionalIntegralDerivative NE: Negative ZE: Zero PO: Positive NB: Negative Big NS:Negative Small ZE: Zero PS: Positive Small PB: Positive Bigv DANH MỤC CÁC BẢNG BIỂU Bảng 3.1 Luật suy luận mờ. Bảng 3.2 Chọn giá trị cho biến mờ sai số. Bảng 3.3 Chọn giá trị cho biến đạo hàm sai số.vi DANH SÁCH HÌNH ẢNH VÀ BIỂU MẪU Hình 1.1 Nbot Hình 1.2 Giải thuật điều khiển Nbot Hình 1.3 Robot điều khiển bằng logic mờ Hình 1.4 Balance bot I Hình 1.5 Segway Hình 1.6 Xe hai bánh tự cân bằng HTV và nhóm thực hiện Hình 2.1 Mô hình Nguyễn lý giữ thăng bằng Hình 2.2 Mô tả cách bắt đầu di chuyển Hình 2.3 Trạng thái xe ba bánh khi di chuyển trên địa hình phẳng và dốc Hình 2.4 Trạng thái xe hai bánh di chuyển trên địa hình phẳng, dốc Hình 2.5 Miền xác định và miền tin cậy của tập mờ Hình 2.6 Một số dạng hàm thuộc (Gaussian, PIshape, Sshape, Sigmoidal, Zshape) Hình 2.7 Phép giao của hai tập mờ Phép hợp Hình 2.8 Phép hợp của hai tập mờ Phép bù Hình 2.9 Phép bù của tập mờ Hình 2.10 Giải mờ theo phương pháp cực đại Phương pháp trọng tâm Hình 2.11 Sơ đồ cấu trúc bộ điều khiển mờ Hình 2.12 Sơ đồ khối cấu trúc bộ điều khiển FuzzyPID Hình 2.13 Bus I2C và các thiết bị ngoại vi Hình 2.14 Kết nối thiết bị vào bus I2C ở chế độ chuẩn (Standard mode) và chế độ nhanh (Fast mode) Hình 2.15 Truyền nhận giữa thiết bị chủ và tớ ( Master – Slave ) Hình 2.16 Điều kiện Start và Stop của bus I2C Hình 2.17 Quá trình truyền tải 1 bit dữ liệu Hình 2.18 Dữ liệu truyền trên bus I2C Hình 2.19 Bit ACK trên bus I2C Hình 2.20 Lưu đồ thuật toán truyền nhận dữ liệu Hình 2.21 Cấu trúc byte dữ liệu đầu tiên Hình 2.22 Quá trình truyền dữ liệu Hình 2.23 Ghi dữ liệu từ chủ đến tớ Hình 2.24 Đọc dữ liệu từ thiết bị tớ Hình 2.25 Quá trình đọc ghi phối hợp dữ liệu Hình 2.26 Sơ đồ tín hiều đầu vào ra của bộ lọc Kalmanvii Hình 2.27 Cảm biến GY86 Hình 2.28 Sơ đồ nguyên lý cảm biến MPU6050 Hình 2.29 Bộ KIT Tiva C Hình 3.1 Nguyên lý hoạt động robot hai bánh tự cân bằng Hình 3.2 Hình chiếu cạnh của con lắc ngược 2 bánh Bảng 3.3 Chọn giá trị cho biến mờ đạo hàm sai số Hình 3.4 Ngõ vào sai số của hàm mờ Hình 3.5 Ngõ vào đạo hàm của sai số theo thời gian Hình 3.6 Mối quan hệ đầu vào ra Hình 3.7 Mô hình mô phỏng FuzzyPID Hình 3.8 Đáp ứng đầu ra khi chỉ dùng hệ số Kp Hình 3.9 Đáp ứng đầu ra khi dùng hệ số Kp và fuzzy Hình 3.10 Đáp ứng đầu ra khi dùng bộ PD Hình 3.11 Đáp ứng đầu ra khi dùng bộ PD Fuzzy Hình 3.12 Tín hiệu điều khiển của bộ PD và PD Fuzzy Hình 3.13 Đáp ứng đầu ra của PD và PD Fuzzy Hình 4.1 Lưu đồ giải thuật Hình 4.2 Lưu đồ khối điều khiển cân bằng Hình 4.3 PIN KPOWER 3S 11.1V 2200mAh 25C Hình 4.4 Đông cơ DC 12V Hình 4.5 Mạch nguồn LD 1085 Hình 4.6 Hình ảnh thực tế Hình 4.7 Driver cầu H Hình 4.8 Sơ đồ kết nối cầu H Hình 4.9 Kết nối cảm biến vào vi điều khiển Hình 4.10 Hình robot nhìn từ trên xuống Hình 4.11 Robot nhìn trực diện` Mục Lục TÓM TẮT ĐỀ TÀI ............................................................................................ i Lời cảm ơn ....................................................................................................... iii DANH MỤC CÁC TỪ VIẾT TẮT ................................................................. iv DANH MỤC CÁC BẢNG BIỂU ..................................................................... v DANH SÁCH HÌNH ẢNH VÀ BIỂU MẪU .................................................. vi CHƯƠNG 1: TỔNG QUAN ............................................................................. 1 1.1 Lời nói đầu .............................................................................................. 1 1.2 Các công trình nghiên cứu liên quan ..................................................... 2 1.2.1 Nbot .................................................................................................. 2 1.2.2 Twowheeled inverted pendulum .................................................... 3 1.2.3 Balance bot I .................................................................................... 4 1.2.4 Segway ............................................................................................. 4 1.2.5 HTV .................................................................................................. 7 1.3 Mục tiêu đề tài ......................................................................................... 8 1.4 Giới hạn đề tài ......................................................................................... 8 1.5 Phương pháp nghiên cứu ......................................................................... 9 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ............................................................... 10 2.1 Thế nào là xe hai bánh tự cân bằng ....................................................... 10 2.2 Tại sao phải thiết kế xe hai bánh cân bằng ........................................... 11 2.3 Ưu nhược điểm của xe hai bánh tự cân bằng ........................................ 12 2.3.1 Ưu điểm của xe scooter tự cân bằng trên hai bánh ........................ 12 2.3.2 Nhược điểm của xe ........................................................................ 13 2.4 Khả năng ứng dụng ............................................................................... 13` 2.5 Giới thiệu thuật toán PID ...................................................................... 13 2.5.1 Thành phần tỉ lệ (P) ........................................................................ 14 2.5.2 Thành phần tích phân (I) ................................................................ 14 2.5.3 Thành phần vi phân (D) ................................................................. 14 2.5.4 Chỉnh định tham số bộ điều khiển PID .......................................... 15 2.6 Lý thuyết điều khiển mờ (Fuzzy Logic Control) .................................. 16 2.6.1 Định nghĩa tập mờ.......................................................................... 16 2.6.2 Các phép toán trên tập hợp mờ ...................................................... 17 2.6.3 Tính chất của tập hợp mờ............................................................... 19 2.6.4 Biến mờ và biến ngôn ngữ............................................................. 20 2.6.5 Mệnh đề mờ và mệnh đề hợp thành ............................................... 21 2.6.6 Các luật hợp thành.......................................................................... 22 2.6.7 Giải mờ........................................................................................... 22 2.6.8 Hệ quy tắc mờ ................................................................................ 23 2.6.9 Xây dựng bộ điều khiển Fuzzy ...................................................... 24 2.7 Cấu trúc bộ điều khiển FuzzyPID ........................................................ 26 2.8 Giới thiệu về I2C ................................................................................... 26 2.8.1 Đặc điểm giao tiếp I2C .................................................................. 27 2.8.2 START and STOP conditions ........................................................ 29 2.8.3 Định dạng dữ liệu truyền................................................................ 30 2.8.4 Định dạng địa chỉ thiết bị............................................................... 32 2.8.5 Truyền dữ liệu trên bus I2C, chế độ MasterSlave ........................ 32 2.9 Giới thiệu về Kalman ........................................................................... 34 2.9.1 Giới thiệu lý thuyết về bộ lọc Kalman ........................................... 34 2.9.2 Xử lý dữ liệu đọc từ cảm biến MPU6050 ...................................... 36` 2.9.3 Áp dụng bộ lọc Kalman cho việc xử lý tín hiệu từ cảm biến MCU6050 ................................................................................................ 37 2.10 Cảm biến Gyo86 ................................................................................ 40 2.11 Board Tiva C ....................................................................................... 41 CHƯƠNG 3: THIẾT KẾ BỘ ĐIỀU KHIỂN .................................................. 43 3.1 Nguyên lý hoạt động của robot hai bánh tự cân bằng........................... 43 3.2. Mô hình hóa robot hai bánh tự cân bằng ............................................. 43 3.2.1. Mô tả phần cứng ............................................................................ 43 3.2.2 Mô hình toán học ........................................................................... 45 3.3 Thiết kế bộ điều khiển FUZZYPID cho robot hai bánh tự cân bằng .. 49 3.3.1 Thiết kế FUZZY ............................................................................. 49 3.3.2 Kết quả mô phỏng của FUZZYPID .............................................. 52 3.3.3 Chọn bộ điều khiển ........................................................................ 54 CHƯƠNG 4: ................................................................................................... 56 THI CÔNG THỰC NGHIỆM ......................................................................... 56 4.1 Lưu đồ giải thuật ................................................................................... 56 4.2 Chọn động cơ và pin ............................................................................. 58 4.2.1 Chọn pin ......................................................................................... 58 4.2.2 Chọn động cơ ................................................................................. 58 4.3 Các mạch điều khiển ............................................................................. 59 4.3.1 Mạch nguồn .................................................................................... 59 4.3.2 Driver cầu H ................................................................................... 60 4.3.3 Kết nối cảm biến với vi điều khiển ................................................ 60 4.4 Mô hình thực tế ..................................................................................... 61 CHƯƠNG 5: ................................................................................................... 63 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI ........................................ 63` 5.1 Các kết quả đã đạt được ........................................................................ 63 5.2 Các kết quả chưa đạt được .................................................................... 63 5.3 Hướng phát triển của đề tài ................................................................... 63 Tài liệu tham khảo ........................................................................................... 64` CHƯƠNG 1: TỔNG QUANChương 1 Tổng Quan Đồ án tốt nghiệp 1 1.1 Lời nói đầu Sự phát triển mạnh mẽ của khoa học kỹ thuật đã tạo tiền đề cho ngành công nghệ robot đạt được những thành tựu to lớn như: robot asio của Honda, robot công nghiệp, robot thám hiểm mặt trăng,… Để đạt được những thành tựu đó ta phải nghiên cứu những vấn đề cân bằng cơ bản để đạt đến những thành tựu công nghệ robot hiện nay thông qua xe hai bánh tự cân bằng Segway, một phát minh nổi tiếng của kỹ sư người Mỹ Dean Kamen vào năm 2001. Đây là một loại robot hai bánh, nó tự giữ cân bằng và di chuyển dễ dàng trong khoảng không gian vừa đủ với yêu cầu linh hoạt, cơ động, hiệu quả. Với những ưu điểm đó, robot hai bánh tự cân bằng đã nhận được sự quan tâm từ các nhà nghiên cứu robot trên thế giới. Do đó, đề tài được xuất phát từ ý tưởng đã được thương mại hóa của công ty Segway. Trên mô hình sản phẩm của Segway với các cảm biến được sử dụng để đọc tín hiệu cảm biến về giá rất là cao. Bên cạnh đó, trình độ về cơ khí chưa cho phép để thiết kế một mô hình hoàn hảo. Do vậy, chúng ta sẽ kết hợp cảm biến giá rẻ phù hợp với điều kiện cho phép kết hợp cùng một mô hình đơn giản cho ra hệ thống xe hai bánh tự cân bằng. Hệ thống là một robot có hai bánh xe được đặt song song với nhau giữa những bản lề mica được xếp ba tầng. Trên hệ thống sử dụng cảm biến để đo góc nghiêng của thân xe, một mạch nguồn 5V cung cấp cho vi điều khiển, một mạch cầu H để cấp xung điều khiển bánh xe, một pin nguồn 12V để cung cấp cho mạch cầu H. Nhờ vào cảm biến được đặt trên hệ thống robot có thể tự giữ thăng bằng. Trên hệ thống robot, cảm biến khi sử dụng luôn bị nhiễu bởi tác động từ mọi thứ từ cơ phí đến sai số ngõ ra, do vậy giá trị đo khi của cảm biến lúc này là không chính xác, bộ lọc Kalman được nghiên cứu và sử dụng để cho kết quả tối ưu về tình trạng góc nghiêng của hệ thống. Nói cách khác thì Kalman là bộ lọc để biến các kết quả từ cảm biến chưa chính xác thành những kết quả có giá trị. Từ tín hiệu đo được, ta sẽ tính toán được các giá trị phù hợp để điều khiển bánh xe giúp cho hệ thống được thăng bằng một cách ổn định. Trong hiện tại, nhưng ưu điểm từ hệ thống robot hai bánh tự cân bằng đã được ứng dụng trên nhiều sản phẩm và hệ thống. Và hi vọng rằng trong tương lai đề tài này sẽ phát triển thêm nhiều hệ thống dưới các dạng khác nhau để phục vụ lợi ích của con người.Chương 1 Tổng Quan Đồ án tốt nghiệp 2 1.2 Các công trình nghiên cứu liên quan 1.2.1 Nbot Nbot do David P.Anderson sáng chế. Nbot được lấy ý tưởng cân bằng như sau: các bánh xe phải chạy về hướng mà robot sắp ngã. Hình 1.1 Nbot Điều khiển dựa trên mô hình không gian trạng thái: Hình 1.2: Giải thuật điều khiển NbotChương 1 Tổng Quan Đồ án tốt nghiệp 3 Góc nghiêng của robot: θ Đạo hàm góc nghiêng chính là vận tốc góc nghiêng: Vị trí robot: x Đạo hàm của vị trí robot chính là vận tốc di chuyển của robot: x Bốn biến thông số này tính ra điện áp điều khiển U cho 2 động cơ của hai bánh xe theo công thức sau: U = K1 θ +K2θ +K3 x + K4 .x Ưu điểm: dể dàng thực hiện bộ điều khiển theo mô hình không gian trạng thái khi đã tuyến tính hóa điểm làm việc để xác định các ma trận A, B, C, D để tính các thông số K1, K2, K3, K4. Khuyết điểm: Vì phải tuyến tính hóa nên khi đối tượng làm việc quá xa điểm cân bằng ta phải tính lại các thông số K1, K2, K3, K4 nên đòi hỏi phải có bộ xử lý mạnh để tính các thông số này hoặc ta phải tính trước. 1.2.2 Twowheeled inverted pendulum Hình 1.3 Robot điều khiển bằng logic mờ Điều khiển dựa trên Fuzzy Logic được nhúng trên FPGA. Ưu điểm: do Fuzzy Logic được nhúng trên FPGA nên tốc độ đáp ứng rất nhanh và chính xác, cộng với bộ kinh nghiệm tốt là thế mạnh rất lớn của mô hình điều khiển dạng này. Khuyết điểm: chất lượng bộ điều khiển phụ thuộc rất nhiều bộ kinh nghiệm của tập mờ. Bộ điều khiển này chỉ có thể áp dụng cho một đối tượng duy nhất và giá thành rất đắt.Chương 1 Tổng Quan Đồ án tốt nghiệp 4 1.2.3 Balance bot I Balance bot I (do Sanghyuk, hàn quốc thực hiện) là một roboy hai bánh tự cân bằng bằng cách kiểm soát thông tin phải hồi. Hệ thống cao 50cm, khung chính là bằng nhôm. Nó có hai trục bánh xe nối với bộ giảm tốc và động cơ DC cho sự phát động. Tổng cộng có ba bộ xử lý Atmel được sử dụng. Vi điều khiển chính thi hành các nguyên lý kiểm soát và thuật toán ước lượng. Một vi điều khiển kiểm soát tất cả các cảm biến analog. Vi điều khiển thứ 3 điều khiển động cơ. Hình 1.4 Balance bot I Điều khiển dựa trên bộ điều khiển LQR Ưu điểm: ổn định một cách bền vững đối với sai số nhân đầu vào đặc biệt là đối với hệ thống này thì tín hiệu góc pitch của gyro sensor rất biến động. Hệ thống làm rất ổn định tại điểm làm việc. Khuyết điểm: Vì phải tuyến tính hóa đối tượng phi tuyến nên khi đối tượng làm việc quá xa điểm cân bằng ta phải tính lại các thông số của bộ điều khiển nên đòi hỏi phải có bộ xử lý mạnh để tính lại các thông số. 1.2.4 Segway Không giống như xe hơi, Segway chỉ có hai bánh trông như một chiếc xe đẩy hai bánh thông thường, nó có thể kiểm soát hoạt động ở tư thế thẳng đứng. Để di chuyển về phía trước hay ra phía sau, người lái chỉ cần hơi nghiêng về phía trước hay ra sau. Để quẹo trái hay phải người lái chỉ cần quay tay lái về hướng đó. Hoạt động cân bằng ở Segway là một điều thú vị nhất, đó là chìa khóa của quá trình hoạt động. Xem xét về mô hình Karmen về thăng bằng của cơ thể người để hiểu hệChương 1 Tổng Quan Đồ án tốt nghiệp 5 thống làm việc như thế nào. Nếu ta đứng nghiêng về phía trước, không còn thăng bằng, bạn sẽ ngã về phía trước. Bộ não biết rằng bạn không còn thăng bằng nữa, bởi vì chất dịch trong tay dao động, nên nó truyền tín hiệu cho chân bạn đặt lên phía trước là bạn lấy lại cân bằng. Nếu bạn giữ cơ thể mình trong tư thế nghiêng về phía trước, bộ não điều khiển bạn đặt chân về phía trước và giữ bạn thẳng đứng. Thay vì ngã, bạn đến trước. Hình 1.5 Segway Segway tạo ra khá giống như vậy, ngoại trừ có các bánh xe thay vì đôi chân, động cơ thay cho cơ bắp, tập hợp các mạch vi xử lý thay cho bộ não và dãy các cảm biến thay cho hệ thống cân bằng tai trong. Như bộ não của bạn Segway nhận biết khi ta hướng về phía trước. Để giữ cân bằng nó quay bánh xe đến trước chỉ với tốc độ vừa phải (chính xác), nên ta di chuyển về phía trước. Thiết bị lái tận dụng công nghệ lái drivebywire và thiết bị cơ khí của hệ thống. Trong khi việc thiết kế bốn bánh mang đến một sự vận động dễ dàng và tốc độ cao hơn một tí, người lái có thể chọn thiết kế bốn bánh hay chỉ hai bánh. Điều quan trọng của Segway là sự kết hợp của một dãy các cảm biến, hệ thống điều khiển và một hệ thống động cơ.Hệ thống cảm biến chủ yếu là sự kết hợp của con quay hồi chuyển (gyroscope). Một con quay hồi chuyển cơ học cơ bản là một bánh xe quay tròn bên trong cơ cấu vững chắc. Mục đích của sự quay tròn là kháng lại sự thay đổi trục quay của nó, bởi vì lực tác động di chuyển dọc theo cơ cấu. Nếu ta đẩy một điểm bên trên bánh xe quay, ví dụ, điểm này di chuyển quay bánh trước trong khi nó vẫn còn giữ lực tác động. Một khi lực giữ di chuyển, nó thúc lực tác dụng đối diện với điểm cuối của bánh xe. Kết quả là không còn cân bằng lực.Chương 1 Tổng Quan Đồ án tốt nghiệp 6 Bởi vì nó kháng đối với lực bên ngoài, bánh xe quay hồi chuyển sẽ duy trì vị trí của nó trong không gian (liên hệ với mặt đất) thậm chí nếu bạn nghiêng nó đi. Nhưng hệ thống con quay hồi chuyển sẽ di chuyển tự do trong không gian. Bằng việc đo lường vị trí của bánh xe quay liên hệ với cơ cấu, cảm biến chính xác có thể cho ta biết độ dốc của vật (nó nghiêng bao nhiêu so với vị trí thẳng đứng) cũng như tốc độ dốc (nó nghiêng như thế nào). Một con quay hồi chuyển thông thường sẽ cồng kềnh và khó bảo dưỡng xe, nên Segway tiếp thu hiệu quả này với hình thức khác của cơ khí. Segway vận dụng một cảm biến tốc độ nghiêng bán dẫn đặc biệt làm từ silic. Loại con quay hồi chuyển này quay định sự quay vòng của vật thể sử dụng hiệu ứng Coriolis trên một lớp rất nhỏ. Segway HT có năm cảm biến hồi chuyển, mặc dù nó chỉ cần ba cảm biến để phát hiện mức đẩy ra trước hay ra sau cũng như nghiêng sang bên trái hay bên phải. Các cảm biến còn lại làm phương tiện chắc chắn hơn. Thêm vào đó, Segway có hai cảm biến nghiêng chứa đầy dung dịch điện phân. Giống như tai trong, hệ thống nhận biết vị trí nghiêng có liên hệ với mặt đất trong trạng thái nghiêng của bề mặt dung dịch. Tất cả thông tin về trạng thái nghiêng truyền đến “bộ não” của xe, hai bản mạch điều khiển điện tử bao gồm một board vi mạch xử lý. Segway có tổng cộng mười bảng mạch vi xử lý, với năng lực gấp ba năng lực của PC điển hình. Thông thường cả hai bảng mạch làm việc chung với nhau nếu một bảng bị hư, bảng còn lại nhận tất cả chức năng để hệ thống báo tín hiệu cho người lái biết sự trục trặt để khởi động lại. Segway đòi hỏi năng lực làm việc cao của bộ não vì nó điều chỉnh cực kỳ chính xác để giữ không bị ngã. Trong những máy thông thường, bảng mạch điều khiển kiểm tra cảm biến khoảng 100 lầngiây. Mạch vi xử lý điều hành phần mềm tương thích để phát tín hiệu tất cả các thông tin ổn định và điều chỉnh tốc độ cho nhiều động cơ điện phù hợp. Động cơ điện được nạp năng lượng từ pin (NiMH) có thể sạc lại, làm quay độc lập mỗi bánh xe với tốc độ khác nhau. Khi xe nghiêng về phía trước, động cơ làm cả hai bánh xe quay về phía trước và giữ về trạng thái nghiêng. Khi xe nghiêng ra sau, động cơ làm cả hai bánh quay ra sau. Khi người lái điều khiển tay lái ra trái hay phải, động cơ làm một trong hai bánh xe quay nhanh hơn bánh kia hay bánh xe quay ngược chiều để xoay vòng. Nó chỉ đi khoảng 12 dặmgiờ ( 20kmgiờ), và nó cần nạp điện khoảng 6 giờ để dự trữ năng lượng đủ cho một chuyến đi 15 dặm ( 24km).Chương 1 Tổng Quan Đồ án tốt nghiệp 7 Segway là lựa chọn cao trong thành phố. Vì các xe hơi đắt tiền và nếu có nhiều xe trên đường phố sẽ gây ùn tắc giao thông, và thiếu chỗ đậu xe. Tất cả điều ấy, xe hơi không là phương tiện tối ưu nhất trong các chung cư đông đúc.Segway không để đưa con người đến nơi muốn đến với độ cao với tốc độ cao nhất, nhưng Segway có thể di chuyển chậm, nối đuôi nhau. Một khi nó đến nơi, người lái có thể mang Segway vào bên trong mà không lo lắng vì về chỗ đậu xe. Và cũng không cần ngừng ở trạm xăng mà chỉ cần nạp điện ở nhà. Segway cũng là chiếc máy tốt dùng để đi trong các kho hàng, nơi có nhiều hành lang. Người ta còn nhận thấy sự hữu dụng khi đi quanh trong các khu dân cư, sân bay hay công viên. Thật sự không có giới hạn không gian sử dụng xe. Segway giúp bạn di chuyển nhanh hơn mà không mất nhiều năng lượng. Tốc độ cao nhất: 12,5 dặmgiờ (20 kmgiờ). Gấp ba lần tốc độ đi bộ bình thường. Trọng lượng không tải: 80 lbs (36 kg). Chiều rộng: không gian bao phủ trên mặt đất của Segway là 19 – 25 inch (48 – 63,5 cm). Segway có chiều rộng gần bằng kích thước của một người trung bình, nên nó không mất nhiều diện tích trên đường. Bàn đạp dài 8 inch (20 cm). Tải trọng: một người nặng 250 pound (110 kg) với hàng hóa nặng 75 pound (34 kg). Phạm vi: đi khoảng 17 dặm (28 km) với một bình sạc đơn. Trên mô hình tính toán, người thiết kế ước tính xe đi trong phạm vi 11 dặm (17 km) với một bình sạc đơn. Giao diện hiển thị xe hoạt động: Segway có màn hình LCD nhỏ cho người biết năng lượng pin còn bao nhiêu và hoạt động của xe như thế nào, còn tốt không. Màn hình trình bày bề mặt hoạt hình, biểu diễn trạng thái chung của phương tiện. 1.2.5 HTV Nhóm sinh viên ngành kỹ thuật HTV của trường đại học Camosun gồm các thành viên Brian Beckwith, Eric Desjardins, Chris Howard, Joel Murphy, Matt Uganecz, Jack Wooley đến từ các bang khác nhau Victoria, British Columbia của Canada. Tháng 32004, họ đã cho ra đời sản phẩm scooter HTV như một đề án tốt nghiệp đại học của họ.Chương 1 Tổng Quan Đồ án tốt nghiệp 8 Hình 1.6 Xe hai bánh tự cân bằng HTV và nhóm thực hiện Nhóm HTV đã sử dụng ADXR150EB từ thiết bị analog đo vận tốc nghiêng. Đó là một gyro tuyệt vời, có các tính năng như: loại bỏ độ rung cao, tỉ số cao ±1500s., độ nhạy cao 12m Vdegs, được cài đặt sẵn tín hiệu điều kiện. MMA2260D từ Motorola, một gia tốc kế có độ nhạy cao (1200m VG), và cũng được cài đặt sẵn tín hiệu điều kiện, dùng đo góc nghiêng tĩnh. Bộ điều khiển sử dụng Logic mờ (Fuzzy Logic) trong việc điều khiển cân bằng và di chuyển xe. 1.3 Mục tiêu đề tài Mục tiêu của đề tài này là xây dựng hệ thống robot hai bánh tự cân bằng dựa trên nền tảng lý thuyết mô hình con lắc ngược. Khả năng cân bằng của robot một cách ổn định sau khi bị tác động. 1.4 Giới hạn đề tài Trong khuôn khổ 16 tuần thực hiện luận văn tốt nghiệp đại học, những mục tiêu của đề tài được đưa ra như sau: Thi công hệ thống robot hai bánh tự cân bằng. Nghiên cứu bộ vi điều khiển ARM CortexM4. Nghiên cứu lập trình C cho ARM CortexM4 bằng IAR. Nghiên cứu thiết kếthi công công phần mạch điều khiển, công suất Thiết kế và mô phỏng bộ điều khiển PID Fuzzy trên Simulink. Tiến hành thu thập dữ liệu từ mô hình mô phỏng để đánh giá đáp ứng của hệ thống.Chương 1 Tổng Quan Đồ án tốt nghiệp 9 Tiến hành chạy thực nghiệm và phân tích đáp ứng của hệ thống và so sánh với kết quả mô phỏng. 1.5 Phương pháp nghiên cứu Xây dựng mô hình lý thuyết gồm có: Tiếp cận từ mô hình tương đương mô hình con lắc ngược đến mô hình thật của đề tài. Mô phỏng mô hình trên MATLAB. Tiếp cận mô hình thực: Thiết kế khung cơ khí cho hệ thống. Mạch nguồn 12V và 5V cung cấp cho mạch cầu H, vi điều khiển. Module cảm biến Gyro – 86. Vi điều khiển trung tâm. Lập trình cho vi điều khiển.CHƯƠNG 2: CƠ SỞ LÝ THUYẾTChương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 10 2.1 Thế nào là xe hai bánh tự cân bằng Hình 2.1 Mô hình Nguyên lý giữ thăng bằng Đối với các xe ba hay bốn bánh, việc giữ thăng bằng của chúng là do trọng tâm nằm trong mặt chân đế do các bánh xe tạo ra. Đối với các xe hai bánh có cấu trúc như xe đạp, việc giữ thăng bằng khi không di chuyển là không thể, vì việc giữ thăng bằng của xe dựa vào tính chất của con quay hồi chuyển ở hai bánh xe khi đang quay. Còn đối với xe hai bánh tự cân bằng, là loại xe chỉ có hai bánh với trục của hai bánh trùng nhau, để cho xe cân bằng, trọng tâm của xe (bao gồm người sử dụng chúng) cần được nằm ngay giữa các bánh xe. Điều này giống như việc ta giữ một cây gậy thẳng đứng nằm cân bằng trong lòng bàn tay. Về mặt kỹ thuật, góc của sàn scooter và chiều của trọng lực có thể biết được. Do vậy, thay vì cách xác định trọng tâm giữa các bánh xe, tay lái cần được giữ thẳng đứng, vuông gốc với sàn (góc cân bằng khi đó là zero). . Hình 2.2 Mô tả cách bắt đầu di chuyển Nếu tay lái được đẩy hơi nghiêng về trước, scooter sẽ chạy tới trước và khi được đẩy nghiêng về phí sau, scooter sẽ chạy lùi. Đây là một phân tích lý tính. Hầu hết mọi người đều có thể kiểm soát tay lái trong vòng vài giây và giữ lấy nó.Để dừng lại, chỉ cần kéo trọng tâm về phía ngược với hướng đang di chuyển thì tốc độChương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 11 xe sẽ giảm. Do tốc độ cảm nhận và phản ứng thăng bằng của mỗi người là khác nhau, nên xe scooter hai bánh tự cân bằng chỉ thiết kế dành cho một người. 2.2 Tại sao phải thiết kế xe hai bánh cân bằng Những mobile robot xây dựng hầu hết robot là những robot di chuyển bằng ba bánh xe, với hai bánh xe được lắp rắp đồng trục, và một bánh đuôi nhỏ. Có nhiều kiểu khau, nhưng đây là kiểu thông dụng nhất. Còn đối với xe bốn bánh thường một lại được lắp thêm một bánh lái. Việc thiết kế ba hay bốn bánh làm cho xemobile robot được thăng bằng ổn đinh nhờ trọng lượng của nó được chia cho hai bánh lái chính và bánh đuôi, hay bất kì cái nào khác để đỡ trọng lượng của xe. Nếu trọng lượng được đặt nhiều vào bánh lái của xerobot sẽ không ổn định dễ bị ngã, còn nếu đặt nhiều vào bánh đuôi thì hai bánh chính mất khả năng bám. Nhiều thiết kế xerobot có thể dic chuyển tốt trên đia hình phẳng, nhưng không thể di chuyển trên địa hình lồi lõm (mặt phẳng nghiêng). Khi di chuyển lên đồi, trọng lượng của xerobot dồn vào đuôi xe làm hai bánh mất khả năng bám và trượt ngã. Đối với những bậc thang, thậm chí nó dừng hoạt động và chỉ xoay tròn bánh xe. Khi di chuyển xuống đồi, sự việc còn tồi tệ hơn, trọng tâm thay đổi về phía trước và thậm chí xerobot bị lật úp khi di chuyển trên bậc thang. Hầu hết những xerobot có thể leo lên những dốc ít hơn là khi chúng dichuyển xuống, bị lật úp khi độ dốc chỉ 150 hay 200 . Việc bố trí bốn bánh xe, giống như xe hơi đồ chơi hay các loại xe bốn bánh đang sữ dụng trong giao thông không gặp vấn đề nhưng điều này sẽ làm các mobile robot không gọn gàng và thiết kế bộ phận lái (cua quẹo) gặp một chút phiền toái để có thể đọc chính xác quãng đường đã đi.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 12 Ngược lại, các xe dạng hai bánh đồng trục hay thăng bằng rất linh động khi di chuyển trên đia hình phức tạp, mặc dù bản thân là một hệ thống không ổn định. Khi nào di chuyển lên sườn dốc nó tự động nghiêng về phía trước và giữ cho trọng lượng dồn về hai bánh lái chính. Tương tựu như vậy, khi xuống dốc nó sẽ nghiêng ra sau và giữ cho trọng tâm dồn vào hai bánh lái. Chính vì vậy, không bao giờ có hiện tượng trọng tâm của xe rơi ra ngoài vùng đỡ của các bánh xe để có thể gây ra sự lật úp. Hình 2.4 Trạng thái xe hai bánh di chuyển trên địa hình phẳng, dốc Đối với những địa hình lồi lõm và những ứng dụng thực tế, sự thăng bằng của xe hai bánh có thể mang lại nhiều ý nghĩa trong giới hạn ổn định hơn là đối với xe ba bánh truyền thống. 2.3 Ưu nhược điểm của xe hai bánh tự cân bằng 2.3.1 Ưu điểm của xe scooter tự cân bằng trên hai bánh Không ô nhiễm, sự dùng bình điện và có thể sạc điện. Sử dụng không gian hiệu quả, đa dạng (sử dụng trong nhà và ngoài phố). Dễ dàng lái xuống đường, dừng lại và nó chuyện với bạn bè. Scooter tự cân bằng này khác hẳn với các loại xe đạp hay xe đẩy bình thường, vì chúng dễ kéo đẩy và không gây khó khăn khi dừng lại. Khá dễ để lái vòng quanh văn phòng, chạy ngang qua cửa ra vào do dốc độ thấp. Ngoài ra, nó có thể xuống các bậc thang, bậc thềm thấp.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 13 Chiếm ít diện tích nên nó không gây tắt nghẽn giao thông như các loại xe bốn bánh. Như một phương tiện di chuyển trên vỉa hè, nó cho phép di chuyển trong nơi đông đúc, và hoàn toàn có thể đi trên lề đường. Giá thành thấp hơi so với xe hơi. Cuốn hút người sử dụng cũng như mọi người xung quanh vì hình dáng kì lạ của nó, phá vỡ các hình ảnh thường thấy về các phương tiện giao thông của con người. 2.3.2 Nhược điểm của xe Không thể thư giãn và khá mệt trong di chuyển vì phải đứng để điều khiển. Vì đứng trên mặt sàn rung (do động cơ gây ra) và cứng làm chân mỏi. Do luôn giữ tư thế thẳng đứng để trọng lượng cơ thể đặt ở trọng tâm và đôi lúc gặp phải đoạn đường xấu khiến cơ thể người điều khiển mỏi mệt. Không thể làm những việc khác khi đứng trên scooter này, chẳng hạn vừa đi vừa nghe điện thoại, hoặc uống nước. Scooter không đủ nhanh để di chuyển đường trường và không đủ an toàn để lên xuống lề đường. Không thể vận chuyển hai người một lúc trên cùng một xe. Không thể leo bậc thang có chiều cao quá 12 bán kính của xe. 2.4 Khả năng ứng dụng Xây dựng được một phương tiện vận chuyển mới trong khu vực chật hẹp có thể di chuyển ngay trong các chung cư tòa nhà cao tầng, dùng trợ giúp di chuyển cho người già và trẻ em vận chuyển. Làm phương tiện vận chuyển hàng hóa đến các nơi đã lập trình sẵn trong các tòa nhà, phòng làm việc, những không gian chật hẹp, khó xoay sở. Thậm chí kết hợp trên các robot có hình dạng tương tự con người, nếu kết hợp với các robot camera, robot dò đường, robot lái mặt đường thì hiệu quả các công dụng cụ thể cực kỳ linh hoạt. Tuy vậy vẫn phải giải quyết thêm về phần xuống cầu thang. 2.5 Giới thiệu thuật toán PID Có thể nói trong lĩnh vực điều khiển, bộ điều khiển PID được xem như là một giải pháp đa năng cho các ứng dụng điểu khiển tương tự hay điều khiển số. Hơn 90% các bộ điều khiển trong công nghiệp được sử dụng là bộ điều khiển PID. Nếu được thiết kế tốt, bộ điều khiển PID có khả năng đáp ứng tốt các chỉ tiêu chấtChương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 14 lượng: chất lượng đáp ứng nhanh, thời gian quá độ ngắn, độ quá điều chỉnh thấp, triệt để được sai lệch tĩnh. Các tham số của bộ điều khiển là KP , K I (hoặc Ti ), K D (hoặc TD ). 2.5.1 Thành phần tỉ lệ (P) u t K e t ( ) ( ) p (2.1) Tác động của thành phần tích phân đơn giản là tín hiệu là tín hiệu điều khiển tỉ lệ tuyến tính với sai lệch điều khiển. Ban đầu, khi sai lệch lớn thì tín hiệu điều khiển lớn. Sai lệch giảm dần thì tín hiệu điều khiển cũng giảm dần. Khi sai lệch e t ( ) 0 thì u t ( ) 0 . Một vấn đề là khi sai lệch đổi dấu thì tín hiệu điều khiển cũng đổi dấu. Thành phần P có ưu điểm là tác động nhanh và đơn giản. Hệ số tỉ lệ K P càng lớn thì tốc độ đáp ứng càng nhanh, do đó thành phần P có vai trò lớn trong giai đoạn đầu của quá trình quá độ. Tuy nhiên, khi hệ số K P càng lớn thì sự thay đổi của tín hiệu điều khiển càng mạnh dẫn đến dao động lớn, đồng thời làm hệ nhạy cảm với nhiễu đo. Hơn nữa, đối với đối tượng không có đặc tính tích phân thì sử dụng bộ P vẫn tồn tại sai lệch tĩnh. 2.5.2 Thành phần tích phân (I) 0 ( ) ( ) t u t K e d I (2.2) Với thành phần là tích phân, khi tồn tại một sai lệch điều khiển dương, luôn làm tăng tín hiệu điều khiển, và khi sai lệch là âm thì luôn làm giảm tín hiệu điều khiển, bất kể sai lệch đó là nhỏ hay lớn. Do đó, ở trạng thái xác lập, sai lệch bị triệt tiêu e t ( ) 0 . Đây cũng là ưu điểm của thành phần tích phân. Nhược điểm của thành phần tích phân là do phải mất một khoảng thời gian để đợi e t ( ) về 0 nên đặc tính tác động của bộ điều khiển sẽ chậm hơn. Ngoài ra, thành phần tích phân đôi khi còn làm xấu đi tính động học của hệ thống, thậm chí có thể làm mất ổn định. Người ta thường sử dụng bộ PI hoặc PID thay vì một bộ I đơn thuần để cải thiện tốc độ đáp ứng, vừa đảm bảo yêu cầu tính động học của hệ thống. 2.5.3 Thành phần vi phân (D) ( ) u t ( ) de t dt (2.3)Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 15 Mục đích của thành phần vi phân là cải thiện sự ổn định của hệ kín. Do động học của quá trình, nên sẽ tồn tại một khoảng thời gian trễ làm bộ điều khiển chậm so với sự thay đổi của sai lệch e(t) và đầu ra y(t) của quá trình. Thành phần vi phân đóng vai trò dự đoán đầu ra của quá trình và đưa ra phản ứng thích hợp dựa trên chiều hướng và tốc độ của sai lệch e(t), làm tăng tốc độ đáp ứng của hệ thống. Một ưu điểm nữa là thành phần vi phân giúp ổn định một số quá trình mà bình thường không ổn định với các bộ PI hay P. Nhược điểm của thành phần vi phân là rất nhạy với nhiễu đo hay của giá trị đặt do tính đáp ứng nhanh ở nêu trên. Luật điều khiển PID được định nghĩa: 1 ( ) ( ) ( ) ( ) t p D I o de t u t K e t e d T T dt (2.4) Trong đó u là tín hiệu điều khiển và e là sai lệch điều khiển ( ) e y y sp Tín hiệu điều khiển là tổng của 3 thành phần: Tỉ lệ, tích phân và vi phân. Hàm truyền của bộ điều khiển PID: D ( ) 1 1 ( ) (1 ) PI P I D P D ( ) i U s G s K K K s K T s E s s T s (2.5) 2.5.4 Chỉnh định tham số bộ điều khiển PID Do từng thành phần của bộ PID có những ưu nhược điểm khác nhau, và không thể đồng thời đạt được tất cả các chỉ tiêu chất lượng một cách tối ưu, nên cần lựa chọn, thỏa hiệp giữa các yêu cầu chất lượng và mục đích điều khiển. Việc lựa chọn tham số cho bộ điều khiển PID cũng phụ thuộc vào đối tượng điều khiển và các phương pháp xác định thông số. Tuy nhiên, kinh nghiệm cũng là một khâu quản trọng trong khâu này. Có nhiều phương pháp để lựa chọn tham số cho bộ điều khiển PID. Ở đây, vì giới hạn về mặt nội dung nên chỉ trình bày về phương pháp phổ biến hay dùng, đó là phương pháp dựa trên đặc tính quá độ của quá trình thu được từ thực nghiệm với giá trị đặt thay đổi theo dạng bậc thang. Phương pháp ZieglerNichols dựa vào Kp, Ti, Td. Bước 1: Xem xét hệ số điều khiển tỉ lệ là dương hay âm. Để làm được điều này ta tăng tín hiệu đầu vào u lên một ít bằng thủ công rồi quan sát giá trị trạng thái xác lập của ngõ ra cũng tăng. Nếu điều này xảy ra, hệ số quá trình trạng thái xác lập là dương và ta có được hệ số điều khiển tỉ lệ Kc hoặc ngược lại.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 16 Bước 2: Chuyển bộ điều khiển sang chế độ P, tắt cả chế độ I và D. Bước 3: Thay đổi trọng số Kc tăng lên từ từ và quan sát đáp ứng ngõ ra. Đợi trạng thái xác lập ở ngõ ra trước khi hệ số Kc khác được thực thi. Bước 4: Kc đạt đến giá trị mà dao động trong các khoảng thời gian được duy trì hoặc gần sát với ngõ ra thì ta xác định Kc=Ku là hệ số tới hạn. Và thời gian dao động là Pu được gọi là thời gian tới hạn. Bước 5: Sử dụng trọng số tới hạn Ku và thời gian tới hạn Pu ta xác định được các giá trị Kc, ti, td theo phương pháp ZieglerNichols như sau: Hầu hết các ứng dụng công nghiệp hiện đại không còn điều chỉnh vòng điều khiển sử dụng các phương pháp tính toán thủ công như trên nữa. Thay vào đó, phần mềm điều chỉnh PID và tối ưu hóa vòng lặp được dùng để đảm báo kết quả chắc chắn hơn. Những gói phần mềm này sẽ tập hợp dữ liệu, phát triển các mô hình xử lý, và đề xuất phương pháp điều chỉnh tối ưu và nó có thể phát triển việc điều chỉnh bằng cách thu thập dữ liệu từ các thay đổi tham khảo. 2.6 Lý thuyết điều khiển mờ (Fuzzy Logic Control) 2.6.1 Định nghĩa tập mờ Trong toán học phổ thông ta đã học khá nhiều về tập hợp, ví dụ như các tập số thực, tập số nguyên P = {2,3,5,..} … Những tập hợp như vậy được gọi là tập hợp kinh điển hay tập rõ, tính “rõ” ở đây được hiểu là một tập xác định S chứa n phần tử thì ứng với phần tử x ta xác định được một giá trị y=S(x). Giờ ta phát biểu thông thường về tốc độ một chiếc xe : chậm, trung bình, hơi nhanh, rất nhanh. Phát biểu “chậm” ở đây không chỉ rõ là bao nhiêu kmh mà “chậm” ở đây có miền giá trị một khoảng nào đó, ví dụ 5kmh tới 10kmh chẵng hạn. Tập hợp L = { chậm, trung bình, hơi nhanh, rất nhanh } như vậy được gọi là tập biến các ngôn ngữ. Vỡi mỗi thành phần ngôn ngữ xk của phát biểu trên nếu nó nhận được một khả năng ( ) xk thì tập hợp F gồm các cặp ( , ( )) x x k được gọi là tập mờ. Định nghĩa của tập mờ: Tập mờ F xác định trên tập kinh điển B là một tập mà mỗi phần tử của nó là một cặp giá trị ( , ( )) x x k với x X và F là một ánh xạ: Dạng điều khiển Kp Ti Td P control Ku2 PI control Ku2.2 Pu1.2 PID control Ku1.7 Pu2 Pu8Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 17 F ( ) : x B 0 1 trong đó F được gọi là hàm liên thuộc, B gọi là tập nền. Các thuật ngữ trong Fuzzy Logic Độ cao tập mờ F là giá trị H x sup ( ) F trong đó sup ( ) F x chỉ là giá trị nhỏ nhất trong tất cả các chặn trên của hàm sup ( ) F x Một tập mờ có ít nhất một phần tử có độ phụ thuộc bằng 1 được gọi là tập mờ chính tắc, tắc là H = 1. Ngược lại, một tập mờ có H < 1 gọi là tập mờ không chính tắc. Miền xác định của tập mờ F, ký hiệu là S là tập con thỏa mãn: S x B x { | ( ) 0} F (2.6) Miền tin cậy của tập mờ F, ký hiệu là T (tập con) thỏa mãn: S x B x { | ( ) 1} F (2.7) Hình 2.5 Miền xác định và miền tin cậy của tập mờ Các dạng hàm thuộc (membership function) trong logic mờ Hình 2.6 Một số dạng hàm thuộc (Gaussian, PIshape, Sshape, Sigmoidal, Zshape) 2.6.2 Các phép toán trên tập hợp mờChương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 18 Phép giao Giao của hai tập mờ A~ và B~ có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức: Hình 2.7 Phép giao của hai tập mờ Giao hai tập mờ theo công thức MIN C~ (x) min A~ (x), B~ (x) (2.8) Giao hai tập mờ theo công thức PROD C~ (x) A~ (x) B~ (x) (2.9) Phép hợp Hợp của hai tập mờ A~ và B~ có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức: Hình 2.8 Phép hợp của hai tập mờChương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 19 Hợp hai tập mờ theo công thức MAX A~B~ (x) maxA~(x),B~(x) (2.10) Hợp hai tập mờ theo công thức SUM A~B~ (x) min1, A~ (x) B~ (x) (2.11) Phép bù Hợp của hai tập mờ A~ và B~ có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức: A~ : A~ (x) 1 A~(x) (2.12) Hình 2.9 Phép bù của tập mờ 2.6.3 Tính chất của tập hợp mờ Tập mờ có các tính tương tự như tập rõ. Cụ thể như sau: Tính giao hoán: A B B A A B B A ~ ~ ~ ~ ~ ~ ~ ~ (2.13) Tính kết hợp: A B C A B C A B C A B C ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ (2.14) Tính phân phối: A B C A B A C A B C A B A B ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ (2.15)Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 20 Tính bắc cầu: Nếu A~ B~ C~ thì A~ C~ (2.16) Tính lặp: A~ A~ (2.17) 2.6.4 Biến mờ và biến ngôn ngữ Con người suy nghỉ và giao tiếp với nhau bằng ngôn ngữ tự nhiên. Vì vậy muốn thiết kế một bộ điều khiển bắt chước sự suy nghĩ, xử lý thông tin và ra quyết định của con người, trước tiên ta cần biểu diễn được ngôn ngữ tự nhiên bằng mô hình toán học. Đặc điểm của ngôn ngữ tự nhiên là chứa đựng thông tin mơ hồ, không chắc chắn, mà tập mờ cũng chứa thông tin mơ hồ không chắc chắn nên rõ ràng có thể dùng tập mờ để biểu diễn ngôn ngữ tự nhiên. 2.6.4.1 Biến mờ Biến mờ là biến được đặc trưng bởi bộ ba phần tử , X , (x), trong đó α là tên biến, X là tập cơ sở, (x) là một tập mờ định nghĩa trên cơ xở X biểu diễn sự hạn chế mờ ngụ ý bởi α. Ví dụ trong bài toán điều khiển mực chất lỏng, chúng ta có định nghĩa các biến mờ sau: cao, X ,cao(x) và (thấp, X, µthấp(x)). 2.6.4.2 Biến ngôn ngữ Biến ngôn ngữ là biến mà giá trị của nó là các từ ngữ hoặc những câu trong ngôn ngữ tự nhiên hay ngôn ngữ nhân tạo. Ví dụ: “Mực chất lỏng” là biến ngôn ngữ thì nó có thể có giá trị là các từ “cao”, “thấp”,... “ Độ tuổi” là biến ngôn ngữ thì nó có thể có giá trị là các từ “trẻ”, “trưởng thành”, “già”,.. Trong lý thuyết tập mờ biến ngôn ngữ được định nghĩa như sau: Biến ngôn ngữ là biến bậc cao hơn biến mờ, nó lấy biến mờ làm giá trị. Theo định nghĩa này, biến ngôn ngữ “mực chất lỏng” có thể nhận một trong các giá trị (cao, X, µcao(x)) và (thấp, X, µthấp(x)). Dễ thấy định nghĩa này rõ ràng, “mực chất lỏng” có thể nhận giá trị “cao” hoặc “thấp”, trong đó từ “cao” hoặc “ thấp” được mô tả bởi tập mờ µcao(x) hoặc µthấp(x) xác đinh trên tập cơ sở X. Vì vậy biến mờ là giá trị của biến ngôn ngữ nên còn được gọi là giá trị ngôn ngữ.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 21 2.6.5 Mệnh đề mờ và mệnh đề hợp thành 2.6.5.1 Mệnh đề mờ Mệnh đề mờ, ký hiệu P~ , là phát biểu có chứa thông tin rõ ràng. Các phát biểu diễn tả ý tưởng chủ quan như mô ta chiều cao hoặc trọng lượng của một người thường là mệnh đề mờ. Trong kỹ thuật, những phát biểu có dạng như sau là các mệnh đề mờ: “Nhiệt độ” là “cao”. “Mực chất lỏng” là “thấp”. “Vận tốc” là “trung bình”... Như vậy, mệnh đề mờ là phát biểu có dạng: “biến ngôn ngữ” là “giá trị ngôn ngữ”. Về mặt toán học, mệnh đề mờ là biểu thức: P~ : x A~ (2.18) Tập mờ A~ đặc trưng cho giá trị ngôn ngữ trong mệnh đề mờ. Khác với mệnh đề khinh điển chỉ có hai khả năng sai hoặc đúng (0 hoặc 1), giá trị thật của mệnh đề mờ là giá trị bất kỳ nằm trong đoạn 0,1. Gọi TP~ là giá trị thật của mệnh đề mờ ~P , TP~ chính là ánh xạ: T(P~) : X 0,1 (2.19) x A~ (x) trong đó X là tập cơ sở của tập mờ A~ Nói cách khác: TP~ A~ (x) với 0 A~ (x) 1 (2.20) Biếu thức trên cho thấy “độ cứng” của mệnh đề P~ : x A~ bằng độ phụ thuộc của x với tập mờ A~ . 2.6.5.2 Mệnh đề hợp thành Cấu trúc chung của mệnh đề hợp thành là “Nếu A thì B”. Trong đó: A là mệnh đề điều kiện. C A B là mệnh đề kết luận. Ví dụ điều khiển mực nước trong bồn chứa, ta quan tâm 2 yếu tố: Mực nước trong bồn L = {rất thấp, thấp, vừa}. Góc mở van ống dẫn G = {đóng, nhỏ, lớn}. Ta có suy diễn cách thức điều khiển như sau: Nếu “mực nước” = “rất thấp” thì “góc mở van” = “lớn”.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 22 Nếu “mực nước” = “thấp” thì “góc mở van” = “nhỏ”. Nếu “mực nước” = “vừa” thì “góc mở van” = “đóng”. 2.6.6 Các luật hợp thành Luật hợp thành là tên gọi chung của mô hình biểu diễn hay nhiều hàm thuộc cho một hay nhiều mệnh đề hợp thành. Các luật hợp thành cơ bản: Luật Max – Min Muật Max – Prod Luật Sum – Min Luật Sum – Prod Giả sử C~ (x) A~ (x), B~ (x) , bốn phương pháp này dựa trên bốn phép toán Max, Min, Prod, Sum. Với Min và Prod là hai phép toán trên phép giao hai tập mờ, còn Max và Sum là hai phép toán trên phép hợp hai tập mờ. Được thể hiện như sau: Min: C~ (x) min A~ (x), B~ (x) (2.21) Prod: C~ (x) A~ (x) B~ (x) (2.22) Max: C~ (x) max A~ (x), B~ (x) (2.23) Sum: C~ (x) min1, A~ (x) B~ (x) (2.24) 2.6.7 Giải mờ Giải mờ là quá trình xác định giá trị rõ ở đầu ra từ hàm thuộc B( ) y của tập mờ B’. Có 2 phương pháp giải mờ. Phương pháp cực đại Các bước thực hiện : Xác định miền chưa giá trị y y , là giá trị mà tại đó B( ) y đạt Max: G y Y y H { | ( ) } B (2.25) Xác định y’ theo một trong 3 cách sau: Nguyên lý trung bình , Nguyên lý cận trái, Nguyên lý cận phải o Nguyên lý trung bình: chọn 1 2 2 y y y Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 23 o Nguyên lý cận trái: chọn y y 1 o Nguyên lý cận phải: chọn y y 2 Giải mờ theo phương pháp cực đại Hình 2.10 Giải mờ theo phương pháp cực đại Phương pháp trọng tâm Điểm y’ được xác định là hoành độ của điểm trọng tâm miền được bao bởi trục hoành và đường B ( ) y Công thức xác định: ( ) ( ) s s y y dy y y dy (2.26) Trong đó S là miền xác định của tập mờ B’ 2.6.8 Hệ quy tắc mờ Hệ quy tắc mờ có thể xem là mô hình toán biểu diễn tri thức, kinh nghiệm của con người trong việc giải quyết bài toán dưới dạng các phát biểu ngôn ngữ. Hệ quy tắc mờ bao gồm các quy tắc có dạng nếuthì, trong đó mệnh đề điều kiện và mệnh đề kết luận của mỗi quy tắc là mệnh đề mờ liên quan đến một hay nhiều biến ngôn ngữ. Điều này có nghĩa là hoàn toàn có thể sử dụng hệ mờ để giải các bài toán điều khiển một ngõ vào một ngõ ra (SISO) hay là nhiều ngõ vào nhiều ngõ ra (MIMO). Có hai loại quy tắc mờ phổ biến trong các hệ mờ hiện nay là quy tắc Mamdani và quy tắc TakagiSugeno (hay còn gọi tắt là Sugeno). 2.6.8.1 Quy tắc mờ Mamdani Kết luận của quy tắc mờ Mamdani là mệnh đề mờ được phát biểu theo công thức: ri: nếu (xi là A~1i ) và ... và (xn là A~ni ) thì (y1 là B~1i ), ... , (ym là B~mi ) (2.27) Trong đó n là số tín hiệu vào, m là số tín hiệu ra, i = i..k, với k là số quy tắc.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 24 Ví dụ, một quy tắc mờ Mandani như sau: Nếu sai số “lớn” và tốc độ thay đổi sai số nhỏ “nhỏ” thì tín hiệu điều khiển “lớn”. 2.6.8.1 Quy tắc mờ Sugeno Kết luận của quy tắc mờ Sugeno là một hàm của cáctín hiệu vào hệ mờ được biểu diễn theo công thức sau: Nếu (x1 là A~1i) và ... và (xn là A~ni ) Thì y1 = f1ix1,...,xn ,..., ym = f mix1,...,xn (2.28) Trong đó n là số tín hiệu vào, m là tín hiệu ra, f là hàm của các tín hiệu vào. Ví dụ: một quy tắc điều khiển mờ Sugeno có dạng Nếu e “lớn” và e “nhỏ” thì u 4e 2e Trong đó u là tín hiệu điều khiển, e là sai số và e là biến thiên của sai số. 2.6.9 Xây dựng bộ điều khiển Fuzzy Hình 2.11 Sơ đồ cấu trúc bộ điều khiển mờ Một bộ điều khiển gốm 3 khâu cơ bản: Khâu mờ hóa Thực hiện luật hợp thành Khâu giải mờ Các nguyên lý thiết kế hệ thống điều khiển mờ:Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 25 Giao diện đầu vào các khâu: mờ hóa và các khâu hiệu chỉnh như tỷ lệ, tích phân, vi phân Thiết bị hợp thành: sự triển khai luật hợp thành R Giao diện đầu ra gồm: khâu giải mờ và các khâu giao diện trực tiếp với đối tượng Trình tự thiết kế hệ thống điều khiển mờ: Bước 1: Định nghĩa các biến ngôn ngữ vàora Bước 2: Xác định các tập mờ cho từng biến ngôn ngữ vàora(mờ hóa) Xác định miền giá trị vật lý của các biến ngôn ngữ Số lượng tập mờ Xác định các hàm thuộc Rời rạc hóa tập mờ Bước 3: Xây dựng các luật hợp thành Bước 4: Chọn thiết bị hợp thành Bước 5: Giải mờ và tối ưu hóa Một số nhược điểm của bộ điều khiển mờ thuần túy: Tuy điều khiển mờ có nhiều phát triển, nhưng cho đến nay vẫn chưa có các nguyên tắc chuẩn mực cho thiết kế cũng như khảo sát tính ổn định, bền vững, chất lượng quá trình, hay ảnh hưởng của nhiễu … cho các bộ điều khiển mờ. Chủ yếu việc thiết kế các bộ điều khiển này dựa trên kinh nghiệm chỉnh định thực nghiệm. Điểm yếu của lý thuyết mờ là những vấn đề về độ phi tuyến của hệ thống. Để khắc phục những nhược điểm đó, một trong những hướng giải quyết đó là kết hợp giữa phương pháp kinh điển (các bộ điều khiển P, PI, PID điều khiển biến trạng thái…) với logic mờ nhằm tận dụng ưu điểm của cả hai phương pháp. Đó là nguyên nhân ra đời các bộ điều khiển tích hợp như: Mờ PID, Mờ thích nghi – PID.Chương 2 Cơ Sở Lý Thuyết Đồ án tốt nghiệp 26 2.7 Cấu trúc bộ điều khiển FuzzyPID Sơ đồ khối bộ điều khiển FuzzyPID Hình 2.12 Sơ đồ khối cấu trúc bộ điều khiển FuzzyPID Ý tưởng về bộ PID Mờ ở đ
T Ổ NG QUAN
L ời nói đầ u
Sự phát triển của khoa học kỹ thuật đã thúc đẩy ngành công nghệ robot đạt được nhiều thành tựu lớn, như robot ASIMO của Honda và robot thám hiểm mặt trăng Để có được những thành tựu này, việc nghiên cứu các vấn đề cân bằng cơ bản là rất quan trọng, điển hình là xe hai bánh tự cân bằng Segway, một phát minh nổi tiếng của kỹ sư Dean Kamen vào năm 2001 Robot hai bánh này có khả năng tự giữ cân bằng và di chuyển linh hoạt trong không gian hạn chế, thu hút sự quan tâm của các nhà nghiên cứu trên toàn thế giới Ý tưởng này đã được thương mại hóa bởi công ty Segway, với mô hình sản phẩm sử dụng cảm biến để đọc tín hiệu về độ cao Tuy nhiên, trình độ cơ khí hiện tại chưa cho phép thiết kế một mô hình hoàn hảo, do đó, việc kết hợp cảm biến giá rẻ với một mô hình đơn giản sẽ tạo ra hệ thống xe hai bánh tự cân bằng hiệu quả.
Hệ thống là một robot hai bánh xe, được thiết kế với các bản lề mica xếp ba tầng Robot sử dụng cảm biến để đo góc nghiêng của thân xe, với mạch nguồn 5V cung cấp cho vi điều khiển và mạch cầu H điều khiển bánh xe Nguồn điện 12V cung cấp cho mạch cầu H, giúp robot tự giữ thăng bằng nhờ vào cảm biến tích hợp.
Trên hệ thống robot, cảm biến thường bị nhiễu do tác động từ nhiều yếu tố, dẫn đến giá trị đo không chính xác Bộ lọc Kalman được nghiên cứu và áp dụng để tối ưu hóa tình trạng góc nghiêng của hệ thống Kalman giúp chuyển đổi các kết quả từ cảm biến không chính xác thành những giá trị có giá trị Từ tín hiệu đo được, chúng ta có thể tính toán các giá trị phù hợp để điều khiển bánh xe, đảm bảo hệ thống hoạt động ổn định và thăng bằng.
Hệ thống robot hai bánh tự cân bằng hiện đang được ứng dụng rộng rãi trong nhiều sản phẩm và hệ thống, mang lại nhiều ưu điểm Hy vọng rằng trong tương lai, đề tài này sẽ tiếp tục phát triển với nhiều hình thức khác nhau để phục vụ lợi ích của con người.
Các công trình nghiên c ứ u liên quan
Nbot do David P.Anderson sáng chế Nbot được lấy ý tưởng cân bằng như sau: các bánh xe phải chạy vềhướng mà robot sắp ngã
Hình 1.1 Nbot Điều khiển dựa trên mô hình không gian trạng thái:
Hình 1.2: Giải thuật điềukhiển Nbot Đồ án t ố t nghi ệ p 3
Đạo hàm góc nghiêng chính là vận tốc góc nghiêng:
Đạo hàm của vị trí robot chính là vận tốc di chuyển của robot: x
Bốn biến thông số này tính ra điện áp điều khiển U cho 2 động cơ của hai bánh xe theo công thức sau:
U = K1* θ + K2*θ + K3* x + K4*x Ưu điểm của phương pháp này là dễ dàng thực hiện bộ điều khiển theo mô hình không gian trạng thái sau khi tuyến tính hóa điểm làm việc, giúp xác định các ma trận A, B, C, D để tính toán các thông số K1, K2, K3, K4.
Khuyết điểm của phương pháp này là do phải tuyến tính hóa, khi đối tượng làm việc quá xa điểm cân bằng, cần phải tính lại các thông số K1, K2, K3, K4 Điều này yêu cầu một bộ xử lý mạnh để thực hiện các phép tính này, hoặc cần phải tính toán trước các thông số này.
Robot điều khiển bằng logic mờ được nhúng trên FPGA mang lại tốc độ đáp ứng nhanh và chính xác Ưu điểm này, kết hợp với bộ kinh nghiệm tốt, tạo thành thế mạnh lớn cho mô hình điều khiển này.
Bộ điều khiển có nhược điểm là chất lượng phụ thuộc nhiều vào kinh nghiệm của tập mờ, chỉ áp dụng cho một đối tượng duy nhất và có giá thành cao.
Balance bot I, do Sanghyuk từ Hàn Quốc phát triển, là một robot hai bánh tự cân bằng thông qua việc kiểm soát thông tin phản hồi Với chiều cao 50cm và khung chính bằng nhôm, robot này sử dụng hai trục bánh xe kết hợp với bộ giảm tốc và động cơ DC để hoạt động Tổng cộng, có ba bộ xử lý Atmel được tích hợp, trong đó vi điều khiển chính thực hiện các nguyên lý kiểm soát và thuật toán ước lượng, vi điều khiển thứ hai quản lý tất cả các cảm biến analog, và vi điều khiển thứ ba điều khiển động cơ.
Bộ điều khiển LQR cho Balance bot I mang lại ưu điểm nổi bật là sự ổn định bền vững trước sai số nhân đầu vào, đặc biệt trong bối cảnh tín hiệu góc pitch từ cảm biến gyro có sự biến động lớn Hệ thống hoạt động rất ổn định tại điểm làm việc.
Khuyết điểm của việc tuyến tính hóa đối tượng phi tuyến là khi đối tượng hoạt động quá xa điểm cân bằng, cần phải tính lại các thông số của bộ điều khiển Điều này yêu cầu một bộ xử lý mạnh mẽ để thực hiện các phép tính cần thiết.
Segway, khác với xe hơi, chỉ có hai bánh và hoạt động ở tư thế thẳng đứng, cho phép người lái di chuyển bằng cách nghiêng người về phía trước hoặc phía sau Để quẹo, người lái chỉ cần xoay tay lái theo hướng mong muốn Cơ chế cân bằng của Segway là yếu tố quan trọng nhất trong hoạt động của nó Khi cơ thể nghiêng về phía trước, não bộ nhận biết sự mất thăng bằng và gửi tín hiệu cho chân để điều chỉnh vị trí, giúp người lái giữ thăng bằng và tiếp tục di chuyển về phía trước thay vì ngã.
Segway hoạt động tương tự như con người, với các bánh xe thay cho đôi chân, động cơ thay cho cơ bắp, và các mạch vi xử lý thay cho bộ não Nó sử dụng cảm biến để duy trì sự cân bằng, giống như hệ thống cân bằng tai trong của con người Khi người dùng nghiêng về phía trước, Segway nhận biết và điều chỉnh tốc độ bánh xe để di chuyển về phía trước một cách chính xác.
Thiết bị lái sử dụng công nghệ drive-by-wire kết hợp với các thành phần cơ khí, cho phép người lái lựa chọn giữa thiết kế bốn bánh hoặc hai bánh, mang lại khả năng vận động linh hoạt và tốc độ cao Segway nổi bật nhờ vào sự tích hợp của nhiều cảm biến, hệ thống điều khiển và động cơ, trong đó cảm biến chủ yếu là con quay hồi chuyển (gyroscope) Con quay hồi chuyển cơ bản hoạt động bằng cách quay tròn trong một cấu trúc vững chắc, giúp kháng lại sự thay đổi trục quay Khi một lực tác động lên bánh xe quay, nó tạo ra sự chuyển động và lực đối kháng, dẫn đến sự mất cân bằng lực.
Bánh xe quay hồi chuyển kháng lại lực bên ngoài, giúp duy trì vị trí trong không gian ngay cả khi bị nghiêng Hệ thống con quay hồi chuyển di chuyển tự do, và thông qua cảm biến chính xác, chúng ta có thể đo lường độ dốc và tốc độ dốc của vật so với vị trí thẳng đứng.
Con quay hồi chuyển thông thường thường cồng kềnh và khó bảo trì, vì vậy Segway đã cải tiến thiết kế này bằng cách sử dụng cơ khí khác Segway áp dụng một cảm biến tốc độ nghiêng bán dẫn đặc biệt được làm từ silic Loại con quay hồi chuyển này hoạt động dựa trên hiệu ứng Coriolis, cho phép xác định sự quay vòng của vật thể trên một lớp rất nhỏ.
Segway HT được trang bị năm cảm biến hồi chuyển, trong đó chỉ cần ba cảm biến để phát hiện mức đẩy ra trước, ra sau và nghiêng sang hai bên Các cảm biến còn lại giúp tăng cường độ ổn định cho phương tiện Đặc biệt, Segway có hai cảm biến nghiêng chứa dung dịch điện phân, hoạt động tương tự như tai trong, giúp nhận biết vị trí nghiêng liên quan đến mặt đất trong trạng thái nghiêng của bề mặt dung dịch.
Tất cả thông tin về trạng thái nghiêng được truyền đến "bộ não" của xe thông qua hai bảng mạch điều khiển điện tử, bao gồm một board vi mạch xử lý Segway sở hữu tổng cộng mười bảng mạch vi xử lý, với năng lực gấp ba lần so với một PC điển hình Thông thường, cả hai bảng mạch hoạt động cùng nhau; nếu một bảng bị hư, bảng còn lại sẽ đảm nhận tất cả chức năng và hệ thống sẽ báo tín hiệu cho người lái biết về sự cố để khởi động lại.
Segway yêu cầu khả năng làm việc cao của bộ não để duy trì sự cân bằng và tránh ngã Bảng mạch điều khiển của nó kiểm tra cảm biến lên đến 100 lần mỗi giây Mạch vi xử lý điều hành phần mềm tương thích, phát tín hiệu để ổn định thông tin và điều chỉnh tốc độ cho nhiều động cơ điện Các động cơ điện này được cung cấp năng lượng từ pin Ni-MH có thể sạc lại, cho phép mỗi bánh xe quay độc lập với tốc độ khác nhau.
M ục tiêu đề tài
Mục tiêu của đề tài là phát triển một hệ thống robot hai bánh tự cân bằng, dựa trên lý thuyết mô hình con lắc ngược, nhằm đảm bảo khả năng cân bằng ổn định cho robot sau khi bị tác động.
Gi ớ i h ạn đề tài
Trong khuôn khổ 16 tuần thực hiện luận văn tốt nghiệp đại học, những mục tiêu của đề tài được đưa ra như sau:
Thi công hệ thống robot hai bánh tự cân bằng
Nghiên cứu bộvi điều khiển ARM Cortex-M4
Nghiên cứu lập trình C cho ARM Cortex-M4 bằng IAR
Nghiên cứu thiết kế-thi công công phần mạch điều khiển, công suất
Thiết kế và mô phỏng bộđiều khiển PID Fuzzy trên Simulink
Tiến hành thu thập dữ liệu từ mô hình mô phỏng để đánh giá đáp ứng của hệ thống Đồ án t ố t nghi ệ p 9
Tiến hành chạy thực nghiệm và phân tích đáp ứng của hệ thống và so sánh với kết quả mô phỏng.
Phương pháp nghiên cứ u
Xây dựng mô hình lý thuyết gồm có:
Tiếp cận từ mô hình tương đương - mô hình con lắc ngược đến mô hình thật của đề tài
Mô phỏng mô hình trên MATLAB
Tiếp cận mô hình thực:
Thiết kế khung cơ khí cho hệ thống
Mạch nguồn 12V và 5V cung cấp cho mạch cầu H, vi điều khiển
Vi điều khiển trung tâm
Lập trình cho vi điều khiển.
CƠ SỞ LÝ THUY Ế T
Th ế nào là xe hai bánh t ự cân b ằ ng
Mô hình nguyên lý giữ thăng bằng cho xe ba hoặc bốn bánh phụ thuộc vào trọng tâm nằm trong mặt chân đế do các bánh xe tạo ra Trong khi đó, xe hai bánh như xe đạp không thể giữ thăng bằng khi không di chuyển, vì thăng bằng của xe dựa vào tính chất con quay hồi chuyển của bánh xe khi quay Đối với xe hai bánh tự cân bằng, trọng tâm của xe, bao gồm cả người sử dụng, cần nằm ngay giữa hai bánh để đảm bảo sự ổn định, tương tự như việc giữ một cây gậy thẳng đứng trong lòng bàn tay.
Về mặt kỹ thuật, góc của sàn scooter và chiều của trọng lực có thể biết được
Để đảm bảo an toàn khi lái xe, tay lái cần được giữ thẳng đứng và vuông góc với mặt sàn, với góc cân bằng là zero, thay vì chỉ tập trung vào việc xác định trọng tâm giữa các bánh xe.
Hình 2.2 Mô tả cách bắt đầu di chuyển
Khi tay lái được nghiêng về phía trước, scooter sẽ di chuyển tới, và khi nghiêng về phía sau, scooter sẽ lùi lại Hầu hết mọi người có thể nhanh chóng kiểm soát tay lái và giữ vững nó Để dừng lại, chỉ cần kéo trọng tâm ngược lại với hướng di chuyển để giảm tốc độ Do khả năng cảm nhận và phản ứng thăng bằng của mỗi người khác nhau, scooter hai bánh tự cân bằng chỉ được thiết kế cho một người sử dụng.
T ạ i sao ph ả i thi ế t k ế xe hai bánh cân b ằ ng
Những robot di động trong xây dựng chủ yếu là các robot di chuyển bằng ba bánh xe, trong đó hai bánh xe được lắp đồng trục và một bánh đuôi nhỏ Mặc dù có nhiều kiểu dáng khác nhau, nhưng đây là kiểu phổ biến nhất.
Còn đối với xe bốn bánh thường một lại được lắp thêm một bánh lái
Việc thiết kế xe hoặc robot di động với ba hoặc bốn bánh giúp duy trì sự thăng bằng ổn định, nhờ vào việc phân chia trọng lượng cho hai bánh lái chính và bánh đuôi, hoặc bất kỳ bánh nào khác hỗ trợ trọng lượng của xe.
Trọng lượng phân bổ không hợp lý trên bánh lái và bánh đuôi của xe/robot có thể dẫn đến sự mất ổn định và khả năng bám đường kém Nhiều thiết kế xe/robot hoạt động tốt trên địa hình phẳng nhưng gặp khó khăn khi di chuyển trên địa hình lồi lõm Khi leo dốc, trọng lượng dồn về phía đuôi xe khiến hai bánh chính trượt và mất khả năng bám Đối với các bậc thang, xe/robot có thể dừng hoạt động và chỉ xoay tròn bánh xe.
Khi di chuyển xuống dốc, xe/robot gặp khó khăn hơn do trọng tâm thay đổi về phía trước, dẫn đến nguy cơ bị lật úp khi di chuyển trên bậc thang, ngay cả với độ dốc chỉ 15° đến 20° Mặc dù các xe/robot có thể leo lên dốc dễ dàng hơn, việc bố trí bốn bánh xe giống như xe hơi đồ chơi có thể gây ra vấn đề cho các robot di động, khiến chúng trở nên kém gọn gàng và làm cho việc thiết kế bộ phận lái gặp khó khăn trong việc xác định chính xác quãng đường đã đi.
Các xe hai bánh đồng trục hoặc thăng bằng rất linh hoạt khi di chuyển trên địa hình phức tạp, mặc dù chúng là hệ thống không ổn định Khi di chuyển lên dốc, xe tự động nghiêng về phía trước để giữ trọng lượng dồn vào hai bánh lái chính Ngược lại, khi xuống dốc, xe nghiêng ra sau để duy trì trọng tâm trên hai bánh lái Do đó, trọng tâm của xe luôn nằm trong vùng đỡ của các bánh, ngăn chặn hiện tượng lật úp.
Trạng thái của xe hai bánh khi di chuyển trên địa hình phẳng và dốc cho thấy sự thăng bằng quan trọng Trong các địa hình lồi lõm và ứng dụng thực tế, khả năng giữ thăng bằng của xe hai bánh mang lại nhiều lợi ích hơn so với xe ba bánh truyền thống, đặc biệt trong việc duy trì ổn định.
Ưu nhược điể m c ủ a xe hai bánh t ự cân b ằ ng
2.3.1 Ưu điểm của xe scooter tự cân bằng trên hai bánh
Không ô nhiễm, sựdùng bình điện và có thể sạc điện
Sử dụng không gian hiệu quả, đa dạng (sử dụng trong nhà và ngoài phố)
Xe scooter tự cân bằng mang lại sự tiện lợi khi di chuyển, cho phép bạn dễ dàng dừng lại và trò chuyện với bạn bè Khác với xe đạp hay xe đẩy thông thường, loại scooter này dễ dàng kéo đẩy và không gây khó khăn khi dừng lại.
Việc di chuyển quanh văn phòng rất dễ dàng nhờ vào độ dốc thấp, cho phép người dùng dễ dàng chạy qua cửa ra vào Hơn nữa, thiết bị còn có khả năng xuống các bậc thang và bậc thềm thấp một cách thuận tiện.
Xe hai bánh chiếm ít diện tích, giúp giảm tắc nghẽn giao thông so với xe bốn bánh Là phương tiện di chuyển linh hoạt trên vỉa hè, xe hai bánh cho phép di chuyển dễ dàng trong những khu vực đông đúc và có thể đi trên lề đường.
Giá thành thấp hơi so với xe hơi.
Hình dáng kì lạ của nó thu hút người sử dụng và mọi người xung quanh, phá vỡ những hình ảnh quen thuộc về các phương tiện giao thông của con người.
Không thể thư giãn và khá mệt trong di chuyển vì phải đứng để điều khiển
Đứng trên mặt sàn rung cứng do động cơ gây ra có thể làm chân mỏi Việc giữ tư thế thẳng đứng để duy trì trọng tâm cơ thể, cùng với việc gặp phải đoạn đường xấu, khiến người điều khiển cảm thấy mệt mỏi.
Không thể làm những việc khác khi đứng trên scooter này, chẳng hạn vừa đi vừa nghe điện thoại, hoặc uống nước
Scooter không đủnhanh để di chuyển đường trường và không đủ an toàn để lên xuống lềđường
Không thể vận chuyển hai người một lúc trên cùng một xe
Không thể leo bậc thang có chiều cao quá 1/2 bán kính của xe.
Kh ả năng ứ ng d ụ ng
Phương tiện vận chuyển mới được phát triển nhằm di chuyển trong các khu vực chật hẹp, đặc biệt là trong các chung cư và tòa nhà cao tầng, giúp hỗ trợ người già và trẻ em trong việc di chuyển dễ dàng hơn.
Phương tiện vận chuyển hàng hóa được thiết kế để di chuyển đến các địa điểm đã lập trình trong tòa nhà, văn phòng và không gian hạn chế Khi kết hợp với các robot có hình dáng giống con người, robot camera, robot dò đường và robot lái mặt đường, hiệu quả sử dụng trở nên linh hoạt hơn Tuy nhiên, vẫn cần tìm giải pháp cho việc di chuyển xuống cầu thang.
Gi ớ i thi ệ u thu ậ t toán PID
Bộ điều khiển PID được coi là giải pháp đa năng trong lĩnh vực điều khiển, được áp dụng rộng rãi trong cả điều khiển tương tự và điều khiển số Hơn 90% bộ điều khiển trong công nghiệp hiện nay là bộ điều khiển PID Khi được thiết kế hợp lý, bộ điều khiển PID có khả năng đáp ứng nhanh, thời gian quá độ ngắn, độ quá điều chỉnh thấp và triệt để sai lệch tĩnh.
Các tham số của bộđiều khiển là K P , K I (hoặc T i ), K D (hoặc T D )
Thành phần tích phân đơn giản trong điều khiển là tín hiệu điều khiển tỉ lệ tuyến tính với sai lệch điều khiển, với tín hiệu điều khiển lớn khi sai lệch lớn và giảm dần khi sai lệch giảm Khi sai lệch bằng 0, tín hiệu điều khiển cũng bằng 0 Một vấn đề cần lưu ý là khi sai lệch đổi dấu, tín hiệu điều khiển cũng sẽ đổi dấu Thành phần P có ưu điểm là tác động nhanh và đơn giản; hệ số tỉ lệ KP càng lớn thì tốc độ đáp ứng càng nhanh, đóng vai trò quan trọng trong giai đoạn đầu của quá trình quá độ Tuy nhiên, hệ số KP lớn cũng dẫn đến sự thay đổi mạnh của tín hiệu điều khiển, gây ra dao động lớn và làm hệ nhạy cảm với nhiễu đo Đối với đối tượng không có đặc tính tích phân, việc sử dụng bộ P vẫn có thể dẫn đến sai lệch tĩnh.
Khi sử dụng thành phần tích phân, một sai lệch điều khiển dương sẽ luôn làm tăng tín hiệu điều khiển, trong khi sai lệch âm sẽ làm giảm tín hiệu điều khiển, bất kể độ lớn của sai lệch Do đó, trong trạng thái xác lập, sai lệch sẽ được triệt tiêu, tức là e(t) = 0 Đây là một trong những ưu điểm nổi bật của thành phần tích phân.
Thành phần tích phân có nhược điểm là cần thời gian để giá trị e(t) tiến về 0, dẫn đến đặc tính tác động của bộ điều khiển chậm hơn Hơn nữa, thành phần này có thể làm giảm tính động học của hệ thống và thậm chí gây mất ổn định.
Người ta thường ưa chuộng sử dụng bộ điều khiển PI hoặc PID thay vì chỉ sử dụng bộ I đơn giản, nhằm cải thiện tốc độ đáp ứng và đảm bảo yêu cầu về tính động học của hệ thống.
( ) de t ( ) u t dt (2.3) Đồ án t ố t nghi ệ p 15
Thành phần vi phân trong hệ điều khiển nhằm cải thiện sự ổn định của hệ thống Do động học của quá trình, có một khoảng thời gian trễ khiến bộ điều khiển phản ứng chậm so với sự thay đổi của sai lệch e(t) và đầu ra y(t) Việc sử dụng thành phần vi phân giúp dự đoán đầu ra và đưa ra phản ứng thích hợp dựa trên chiều hướng và tốc độ của sai lệch e(t), từ đó tăng tốc độ đáp ứng của hệ thống.
Một ưu điểm nữa là thành phần vi phân giúp ổn định một số quá trình mà bình thường không ổn định với các bộ PI hay P
Nhược điểm của thành phần vi phân là rất nhạy với nhiễu đo hay của giá trị đặt do tính đáp ứng nhanh ở nêu trên
Luật điều khiển PID được định nghĩa:
Tín hiệu điều khiển u bao gồm ba thành phần chính: tỉ lệ, tích phân và vi phân, trong đó e là sai lệch điều khiển được xác định bởi công thức e = y_{sp} - y.
Hàm truyền của bộđiều khiển PID:
2.5.4 Chỉnh định tham số bộđiều khiển PID
Các thành phần của bộ PID có ưu nhược điểm riêng, do đó không thể đạt được tất cả các chỉ tiêu chất lượng một cách tối ưu cùng một lúc Cần phải lựa chọn và thỏa hiệp giữa các yêu cầu chất lượng và mục đích điều khiển Việc xác định tham số cho bộ điều khiển PID phụ thuộc vào đối tượng điều khiển và các phương pháp xác định thông số, trong đó kinh nghiệm đóng vai trò quan trọng.
Có nhiều phương pháp để chọn tham số cho bộ điều khiển PID, nhưng trong bài viết này, chúng tôi sẽ tập trung vào phương pháp phổ biến nhất Phương pháp này dựa trên đặc tính quá độ của quá trình thu được từ thực nghiệm, với giá trị đặt thay đổi theo dạng bậc thang.
Phương pháp Ziegler-Nichols dựa vào Kp, Ti, Td
Bước đầu tiên là xác định hệ số điều khiển tỉ lệ có phải là dương hay âm Để thực hiện điều này, ta cần tăng tín hiệu đầu vào u một cách thủ công và quan sát xem giá trị trạng thái xác lập của ngõ ra có tăng lên hay không Nếu giá trị này tăng, điều đó cho thấy hệ số quá trình trạng thái xác lập là dương, từ đó ta có thể xác định hệ số điều khiển tỉ lệ Kc.
Bước 2: Chuyển bộđiều khiển sang chếđộ P, tắt cả chếđộ I và D
Bước 3: Tăng dần trọng số Kc và theo dõi phản ứng đầu ra Hãy chờ cho đến khi trạng thái đầu ra ổn định trước khi thực hiện thay đổi hệ số Kc khác.
Khi Kc đạt giá trị mà dao động duy trì ổn định trong khoảng thời gian gần sát với ngõ ra, ta xác định Kc=Ku là hệ số tới hạn Thời gian dao động lúc này được gọi là thời gian tới hạn, ký hiệu là Pu.
Bước 5: Áp dụng trọng số tới hạn Ku và thời gian tới hạn Pu để xác định các giá trị Kc, ti, td theo phương pháp Ziegler-Nichols.
Hầu hết các ứng dụng công nghiệp hiện đại đã chuyển từ việc điều chỉnh vòng điều khiển bằng các phương pháp tính toán thủ công sang sử dụng phần mềm điều chỉnh PID và tối ưu hóa vòng lặp Những phần mềm này không chỉ đảm bảo kết quả chính xác hơn mà còn thu thập dữ liệu, phát triển mô hình xử lý và đề xuất phương pháp điều chỉnh tối ưu Bằng cách này, việc điều chỉnh có thể được cải thiện thông qua việc thu thập dữ liệu từ các thay đổi tham khảo.
Lý thuy ết điề u khi ể n m ờ (Fuzzy Logic Control)
Trong toán học phổ thông, chúng ta đã tìm hiểu về các tập hợp, chẳng hạn như tập số thực và tập số nguyên P = {2, 3, 5, } Những tập hợp này được gọi là tập hợp kinh điển hay tập rõ Tính "rõ" ở đây có nghĩa là với một tập xác định S chứa n phần tử, ta có thể xác định một giá trị y tương ứng với phần tử x, tức là y = S(x).
Tốc độ của một chiếc xe thường được mô tả bằng các từ như chậm, trung bình, hơi nhanh và rất nhanh Tuy nhiên, khi nói "chậm", chúng ta không chỉ rõ được tốc độ cụ thể là bao nhiêu km/h.
Tập hợp L = { chậm, trung bình, hơi nhanh, rất nhanh } đại diện cho các mức độ tốc độ, với "chậm" có miền giá trị từ 5km/h đến 10km/h Mỗi thành phần ngôn ngữ xk trong phát biểu này có khả năng tương ứng là ( )xk Tập hợp F, bao gồm các cặp ( , ( ))x xk, được gọi là tập mờ.
Tập mờ F xác định trên tập kinh điển B là một tập mà mỗi phần tử của nó là một cặp giá trị ( , ( ))x xk với x X và F là một ánh xạ:
Dạng điều khiển Kp Ti Td
PID control Ku/1.7 Pu/2 Pu/8 Đồ án t ố t nghi ệ p 17
Trong logic mờ, hàm liên thuộc $\mu$ được định nghĩa trên khoảng $[0, 1]$, với $B$ là tập nền Độ cao của tập mờ $F$ được xác định bởi giá trị $H = \sup \mu_F(x)$, trong đó $\sup \mu_F(x)$ là giá trị nhỏ nhất trong tất cả các chặn trên của hàm $\mu_F(x)$.
Một tập mờ được gọi là chính tắc nếu nó có ít nhất một phần tử với độ phụ thuộc bằng 1, tức là H = 1 Ngược lại, nếu H < 1, tập mờ đó được xem là không chính tắc.
Miền xác định của tập mờ F, ký hiệu là S là tập con thỏa mãn:
Miền tin cậy của tập mờ F, ký hiệu là T (tập con) thỏa mãn:
Hình 2.5 Miền xác định và miền tin cậy của tập mờ
Các dạng hàm thuộc (membership function) trong logic mờ
Hình 2.6 Một số dạng hàm thuộc (Gaussian, PI-shape, S-shape, Sigmoidal, Z- shape) 2.6.2 Các phép toán trên tập hợp mờ Đồ án t ố t nghi ệ p 18
Giao của hai tập mờ A ~ và B ~có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức:
Hình 2.7 Phép giao của hai tập mờ
Giao hai tập mờ theo công thức MIN
Giao hai tập mờ theo công thức PROD
Hợp của hai tập mờ A ~ và B ~có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức:
Hình 2.8 Phép hợp của hai tập mờ Đồ án t ố t nghi ệ p 19
Hợp hai tập mờ theo công thức MAX
Hợp hai tập mờ theo công thức SUM
Hợp của hai tập mờ A ~ và B ~có cùng cơ sở X là một tập mờ xác định trên cơ sở X có hàm liên thuộc xác định bởi biểu thức:
Hình 2.9 Phép bù của tập mờ
2.6.3 Tính chất của tập hợp mờ
Tập mờcó các tính tương tựnhư tập rõ Cụ thểnhư sau:
2.6.4 Biến mờ và biến ngôn ngữ
Con người giao tiếp và suy nghĩ thông qua ngôn ngữ tự nhiên Để thiết kế một bộ điều khiển mô phỏng quá trình suy nghĩ, xử lý thông tin và ra quyết định của con người, cần phải biểu diễn ngôn ngữ tự nhiên bằng mô hình toán học Ngôn ngữ tự nhiên thường chứa thông tin mơ hồ và không chắc chắn, do đó, tập mờ có thể được sử dụng để biểu diễn những đặc điểm này của ngôn ngữ tự nhiên.
Biến mờ được định nghĩa bởi ba thành phần chính: tên biến α, tập cơ sở X, và hàm mờ $\mu_{\alpha}(x)$, trong đó hàm mờ này thể hiện sự hạn chế mờ liên quan đến biến α trên tập cơ sở X.
Ví dụtrong bài toán điều khiển mực chất lỏng, chúng ta có định nghĩa các biến mờ sau: cao,X, cao (x) và (thấp, X, àthấp(x))
Biến ngôn ngữ là biến mà giá trị của nó là các từ ngữ hoặc những câu trong ngôn ngữ tự nhiên hay ngôn ngữ nhân tạo
- “Mực chất lỏng” là biến ngôn ngữ thì nó có thể có giá trị là các từ
- “ Độ tuổi” là biến ngôn ngữ thì nó có thể có giá trị là các từ “trẻ”,
Trong lý thuyết tập mờ, biến ngôn ngữ được định nghĩa là biến bậc cao hơn biến mờ, với giá trị từ biến mờ Cụ thể, biến ngôn ngữ “mực chất lỏng” có thể nhận các giá trị như “cao” hoặc “thấp”, trong đó “cao” và “thấp” được mô tả bởi các tập mờ àcao(x) và àthấp(x) xác định trên tập cơ sở X.
Vì vậy biến mờ là giá trị của biến ngôn ngữnên còn được gọi là giá trị ngôn ngữ Đồ án t ố t nghi ệ p 21
2.6.5 Mệnh đề mờ và mệnh đề hợp thành
Mệnh đề mờ, ký hiệu P ~, là những phát biểu chứa thông tin không rõ ràng Các phát biểu thể hiện ý tưởng chủ quan, chẳng hạn như mô tả chiều cao hoặc trọng lượng của một người, thường được coi là mệnh đề mờ Trong lĩnh vực kỹ thuật, các phát biểu có dạng tương tự cũng được xem là mệnh đề mờ.
- “Mực chất lỏng” là “thấp”.
- “Vận tốc” là “trung bình”
Như vậy, mệnh đề mờ là phát biểu có dạng: “biến ngôn ngữ” là “giá trị ngôn ngữ” Về mặt toán học, mệnh đề mờ là biểu thức:
Tập mờ A đại diện cho giá trị ngôn ngữ trong mệnh đề mờ Khác với mệnh đề kinh điển chỉ có hai khả năng sai hoặc đúng (0 hoặc 1), giá trị thực của mệnh đề mờ nằm trong khoảng [0,1] Gọi T(P) là giá trị thực của mệnh đề mờ.
T ( P ~ ) : X 0 , 1 (2.19) x A ~ (x) trong đó X là tập cơ sở của tập mờ A ~
Biếu thức trên cho thấy “độ cứng” của mệnh đề P ~ : x A ~ bằng độ phụ thuộc của x với tập mờ A ~
Cấu trúc chung của mệnh đề hợp thành là “Nếu A thì B”.
- C A Blà mệnh đề kết luận
Ví dụđiều khiển mực nước trong bồn chứa, ta quan tâm 2 yếu tố:
- Mực nước trong bồn L = {rất thấp, thấp, vừa}
- Góc mở van ống dẫn G = {đóng, nhỏ, lớn}
Ta có suy diễn cách thức điều khiển như sau:
- Nếu “mực nước” = “rất thấp” thì “góc mởvan” = “lớn”. Đồ án t ố t nghi ệ p 22
- Nếu “mực nước” = “thấp” thì “góc mởvan” = “nhỏ”.
- Nếu “mực nước” = “vừa” thì “góc mởvan” = “đóng”.
Luật hợp thành là tên gọi chung của mô hình biểu diễn hay nhiều hàm thuộc cho một hay nhiều mệnh đề hợp thành
Các luật hợp thành cơ bản:
Giả sử $\mu_C \sim (x) \in \mu_A \sim (x), \mu_B \sim (x)$, bốn phương pháp này dựa trên bốn phép toán: Max, Min, Prod, và Sum Trong đó, Min và Prod là hai phép toán áp dụng cho phép giao của hai tập mờ, còn Max và Sum là hai phép toán áp dụng cho phép hợp của hai tập mờ.
Giải mờlà quá trình xác định giá trị rõ ởđầu ra từ hàm thuộc B ' ( )y của tập mờB’
Có 2 phương pháp giải mờ
Xác định miền chưa giá trị y y ' , ' là giá trị mà tại đó B '( )y đạt Max:
Xác định y’ theo một trong 3 cách sau:
Nguyên lý trung bình , Nguyên lý cận trái, Nguyên lý cận phải o Nguyên lý trung bình: chọn ' 1 2
2 y y y Đồ án t ố t nghi ệ p 23 o Nguyên lý cận trái: chọn y ' y 1 o Nguyên lý cận phải: chọn y ' y 2
Giải mờtheo phương pháp cực đại
Hình 2.10 Giải mờtheo phương pháp cực đại
Phương pháp trọng tâm Điểm y’ được xác định là hoành độ của điểm trọng tâm miền được bao bởi trục hoành và đường B ' ( )y
Trong đó S là miền xác định của tập mờB’
Hệ quy tắc mờ là mô hình toán học thể hiện tri thức và kinh nghiệm của con người trong việc giải quyết vấn đề thông qua các phát biểu ngôn ngữ Nó bao gồm các quy tắc dạng nếu-thì, với mệnh đề điều kiện và kết luận là các mệnh đề mờ liên quan đến một hoặc nhiều biến ngôn ngữ Do đó, hệ quy tắc mờ có thể được áp dụng để giải quyết các bài toán điều khiển với một ngõ vào một ngõ ra (SISO) hoặc nhiều ngõ vào nhiều ngõ ra (MIMO).
Có hai loại quy tắc mờ phổ biến trong các hệ mờ hiện nay là quy tắc Mamdani và quy tắc Takagi-Sugeno (hay còn gọi tắt là Sugeno)
Kết luận của quy tắc mờ Mamdani là mệnh đề mờđược phát biểu theo công thức: ri: nếu (xi là A~ 1 i
) và và (xn là A~ ni
) (2.27) Trong đó n là số tín hiệu vào, m là số tín hiệu ra, i = i k, với k là số quy tắc Đồ án t ố t nghi ệ p 24
Ví dụ, một quy tắc mờMandani như sau:
Nếu sai số“lớn” và tốc độthay đổi sai số nhỏ“nhỏ” thì tín hiệu điều khiển “lớn”. 2.6.8.1 Quy tắc mờ Sugeno
Kết luận của quy tắc mờ Sugeno là một hàm của cáctín hiệu vào hệ mờđược biểu diễn theo công thức sau:
) và và (xn là A~ ni
Thì y1 = f 1 i x 1 , ,xn , , ym = fmi x 1 , ,xn (2.28)
Trong đó n là số tín hiệu vào, m là tín hiệu ra, f là hàm của các tín hiệu vào
Ví dụ: một quy tắc điều khiển mờ Sugeno có dạng
Nếu e “lớn” và e “nhỏ” thì u 4 e 2 e
Trong đó u là tín hiệu điều khiển, e là sai số và e là biến thiên của sai số
2.6.9 Xây dựng bộđiều khiển Fuzzy
Hình 2.11 Sơ đồ cấu trúc bộđiều khiển mờ
Một bộđiều khiển gốm 3 khâu cơ bản:
Thực hiện luật hợp thành
Các nguyên lý thiết kế hệ thống điều khiển mờ: Đồ án t ố t nghi ệ p 25
Giao diện đầu vào các khâu: mờ hóa và các khâu hiệu chỉnh như tỷ lệ, tích phân, vi phân
Thiết bị hợp thành: sự triển khai luật hợp thành R
Giao diện đầu ra gồm: khâu giải mờ và các khâu giao diện trực tiếp với đối tượng
Trình tự thiết kế hệ thống điều khiển mờ:
Bước 1: Định nghĩa các biến ngôn ngữ vào/ra
Bước 2: Xác định các tập mờ cho từng biến ngôn ngữ vào/ra(mờ hóa)
Xác định miền giá trị vật lý của các biến ngôn ngữ
Xác định các hàm thuộc
Rời rạc hóa tập mờ
Bước 3: Xây dựng các luật hợp thành
Bước 4: Chọn thiết bị hợp thành
Bước 5: Giải mờ và tối ưu hóa
Một sốnhược điểm của bộđiều khiển mờ thuần túy:
Mặc dù điều khiển mờ đã có nhiều phát triển, nhưng hiện tại vẫn chưa có các nguyên tắc chuẩn mực cho thiết kế và khảo sát tính ổn định, bền vững, chất lượng quá trình, cũng như ảnh hưởng của nhiễu đối với các bộ điều khiển mờ Việc thiết kế chủ yếu dựa vào kinh nghiệm chỉnh định thực nghiệm Một trong những điểm yếu của lý thuyết mờ là vấn đề độ phi tuyến của hệ thống Để khắc phục nhược điểm này, một giải pháp là kết hợp phương pháp kinh điển như các bộ điều khiển P, PI, PID với logic mờ, nhằm tận dụng ưu điểm của cả hai phương pháp Điều này dẫn đến sự ra đời của các bộ điều khiển tích hợp như Mờ - PID và Mờ thích nghi - PID.
C ấ u trúc b ộ điề u khi ể n Fuzzy-PID
Sơ đồ khối bộđiều khiển Fuzzy-PID
Bộ điều khiển Fuzzy-PID sử dụng Logic mờ để tối ưu hóa các tham số của bộ điều khiển PID, như thể hiện trong sơ đồ khối cấu trúc.
Bộ điều khiển PID có 3 tham số K K Kp , I , D nằm trong khoảng min ax min ax min ax
[K p ,K pm ],[K I ,K Im ],[K D ,K Dm ] Ta sẽ đổi các khoảng cách này về dạng chính tắc:
Gi ớ i thi ệ u v ề I2C
Trong các hệ thống điện tử hiện đại, nhiều ICs và thiết bị ngoại vi cần thiết phải giao tiếp với nhau và với các thiết bị khác, nhằm kết nối hiệu quả với thế giới bên ngoài.
Philips đã phát triển chuẩn nối tiếp hai dây I2C nhằm đạt hiệu quả cao cho phần cứng với mạch điện đơn giản I2C, viết tắt của Inter-Integrated Circuit, là bus giao tiếp giữa các IC Mặc dù được phát triển bởi Philips, chuẩn I2C đã được nhiều nhà sản xuất khác áp dụng.
I2C đã trở thành một chuẩn công nghiệp quan trọng cho giao tiếp điều khiển, được sử dụng rộng rãi bởi nhiều tên tuổi lớn như Texas Instrument, Maxin Dallas, Analog Device và National Semiconductor Bus I2C đóng vai trò là bus giao tiếp ngoại vi cho nhiều loại IC khác nhau, bao gồm các vi điều khiển 8051, PIC, AVR, ARM, cũng như các chip nhớ như RAM tĩnh, EPROM, bộ chuyển đổi tương tự (ADC), số tương tự (DAC), và các IC điều khiển LCD, LED.
Hình 2.13 Bus I2C và các thiết bị ngoại vi
Giao tiếp I2C bao gồm hai dây chính: Serial Data (SDA) và Serial Clock (SCL) Trong đó, SDA là đường truyền dữ liệu hai chiều, còn SCL là đường truyền xung đồng hồ chỉ theo một chiều Khi một thiết bị ngoại vi kết nối vào bus I2C, chân SDA của thiết bị sẽ được nối với dây SDA của bus, và chân SCL sẽ kết nối với dây SCL.
Hình 2.14 Kết nối thiết bị vào bus I2C ở chếđộ chuẩn (Standard mode) và chếđộ nhanh (Fast mode) Đồ án t ố t nghi ệ p 28
Mỗi dây SDA và SCL được kết nối với điện áp dương thông qua điện trở kéo lên, cần thiết do chân giao tiếp I2C của thiết bị ngoại vi thường là dạng cực máng hở Giá trị điện trở này thay đổi tùy theo thiết bị và chuẩn giao tiếp, thường từ 1KΩ đến 4.7KΩ Mặc dù nhiều thiết bị ICs được kết nối vào bus I2C, nhưng không xảy ra nhầm lẫn giữa chúng vì mỗi thiết bị có một địa chỉ duy nhất, duy trì mối quan hệ chủ/tớ trong suốt thời gian kết nối.
Mỗi thiết bị trong hệ thống I2C có thể hoạt động như thiết bị nhận dữ liệu hoặc vừa truyền vừa nhận, tùy thuộc vào vai trò của nó là thiết bị chủ (master) hay tớ (slave) Khi kết nối với bus I2C, mỗi thiết bị được gán một địa chỉ duy nhất và được cấu hình là thiết bị chủ hoặc tớ Sự phân biệt này là cần thiết vì thiết bị chủ nắm quyền điều khiển trên bus I2C, tạo xung đồng hồ cho toàn hệ thống Trong quá trình giao tiếp giữa thiết bị chủ và tớ, thiết bị chủ đảm nhận vai trò tạo xung đồng hồ, trong khi thiết bị tớ giữ vai trò bị động.
Hình 2.15 Truyền nhận giữa thiết bị chủ và tớ ( Master – Slave )
Hình ảnh cho thấy xung đồng hồ chỉ một hướng từ chủ đến tớ, trong khi luồng dữ liệu có thể di chuyển theo hai hướng: từ chủ đến tớ hoặc ngược lại từ tớ đến chủ.
Bus I2C truyền dữ liệu 8-bit với tốc độ 100Kbits/s trong chế độ chuẩn và tối đa 3,4Mbits/s trong chế độ cao tốc.
Một bus I2C có thể hoạt động ở nhiều chếđộ khác nhau:
Một chủ một tớ (one master – one slave)
Một chủ nhiều tớ (one master – multi slave)
Nhiều chủ nhiều tớ (multi master – multi slave)
Giao tiếp I2C luôn dựa vào mối quan hệ chủ/tớ, trong đó thiết bị A muốn gửi dữ liệu đến thiết bị B sẽ thực hiện một quy trình cụ thể.
Thiết bị A (Chủ) xác định chính xác địa chỉ của thiết bị B (Tớ) và quyết định thực hiện thao tác đọc hoặc ghi dữ liệu vào thiết bị Tớ.
Thiết bị A gửi dữ liệu tới thiết bị B
Thiết bị A kết thúc quá trình truyền dữ liệu
Khi A muốn nhận dữ liệu từ B, quá trình giao tiếp diễn ra với A là chủ và B là tớ Chi tiết về cách thiết lập giao tiếp này sẽ được mô tả trong các mục tiếp theo.
Trong giao tiếp mạng I2C, hai điều kiện thiết yếu là START và STOP START đánh dấu sự khởi đầu của quá trình giao tiếp, trong khi STOP chỉ ra sự kết thúc của nó Hình ảnh dưới đây minh họa rõ ràng các điều kiện này.
Khi bắt đầu quá trình giao tiếp, cả hai đường SDA và SCL đều ở mức cao (SDA = SCL = HIGH), lúc này bus I2C được coi là rỗi và sẵn sàng cho giao tiếp Hai điều kiện START và STOP là cần thiết trong việc giao tiếp giữa các thiết bị I2C.
Điều kiện START trong bus I2C được xác định bởi sự chuyển đổi từ mức cao xuống thấp trên đường SDA khi đường SCL đang ở mức cao Ngược lại, điều kiện STOP được xác định bởi sự chuyển đổi từ mức thấp lên cao trên đường SDA trong khi đường SCL vẫn ở mức cao.
Khi có tín hiệu START được lặp lại trong quá trình giao tiếp I2C thay vì tín hiệu STOP, bus I2C vẫn duy trì trạng thái bận Cả tín hiệu START và tín hiệu lặp lại START đều có chức năng khởi tạo một giao tiếp.
2.8.3 Định dạng dữ liệu truyền
Gi ớ i thi ệ u v ề Kalman
2.9.1 Giới thiệu lý thuyết về bộ lọc Kalman
Phương pháp Kalman là một kỹ thuật tổng quát dùng để ước lượng trạng thái của một quá trình hay hệ thống Trạng thái này được mô hình hóa rời rạc theo thời gian thông qua một phương trình ngẫu nhiên tuyến tính Cụ thể, trạng thái của hệ thống tại thời điểm k được phát triển từ trạng thái tại thời điểm (k - 1).
𝐹 là ma trận chuyển trạng thái, nó được áp dụng cho trạng thái trước đó 𝑥
𝐵 là ma trận kiểm soát đầu vào, nó được áp dụng cho các vectơ điều khiển
Vectơ biến ngẫu nhiên 𝑤 đại diện cho nhiễu trong hệ thống, được giả định tuân theo phân bố Gauss với trung bình bằng 0 và ma trận hiệp phương sai là Q, ký hiệu là 𝑤 ~N(0,𝑄).
Tại thời điểm k, chúng ta có thể đo đạc và quan sát chính xác trạng thái của hệ thống bằng một phương pháp nào đó, và trạng thái này có thể được biểu diễn qua một phương trình tuyến tính.
Ma trận H là công cụ chuyển đổi không gian trạng thái đo đạc thành không gian trạng thái quan sát Nói một cách đơn giản, ma trận này giúp lọc ra các giá trị đo đạc quan trọng trong chuỗi dữ liệu mà chúng ta thu thập.
Vectơ biến ngẫu nhiên 𝑣 đại diện cho nhiễu trong quá trình đo đạc hoặc quan sát, được giả định tuân theo phân bố Gauss với trung bình bằng 0 và ma trận hiệp biến là R Tóm lại, 𝑣 có phân bố 𝑣 ~N(0,𝑅).
Từ hai phương trình xuất phát cơ bản nêu trên, ta còn phải chú ý đến các điểm sau:
Trạng thái ban đầu của hệ thống và các vectơ nhiễu {x0, w1, …, w k , v1, …,v k } được xem là độc lập với nhau
Các ma trận 𝑄 và 𝑅 là các ma trận đối xứng nữa xác định dương.
Nếu vectơ trạng thái x có kích thước là (n) thì:
Ma trận F sẽcó kích thước là (n x n)
Ma trận B sẽcó kích thước là (n x 1), ma trận này phụ thuộc vào vectơ điều khiển 𝑢 Với u là vectơ có kích thước (1)
Và nếu vectơ đo đạc z có kích thước là (m) thì ma trận H sẽcó kích thước (m x n)
Các ma trận Q, R, F, H có thể thay đổi theo thời gian, nhưng ở đây chúng được giả sửkhông đổi để thuận tiện hơn cho quá trình tính toán
Các phương trình của bộ lọc Kalman:
Khởi tạo lúc đầu Quá trình dựđoán x ˆ k 1 | k 1 và P k 1 | k 1
(2) Dựđoán, ước hiệp phương sai k
(4) Độ lệnh hiệp phương sai k
(6) Cập nhận trạng thái ước đoán đã điểu chỉnh xˆ k | k xˆ k | k 1K k Y~ k
(7) Cập nhận hiệp phương sai ước lượng đã điều chỉnh
Ký hiệu ước lượng dựđoán của trạng thái xk dựa trên quan sát ở thời điểm k-
1, z0, , là x ˆ k 1 | k 1 N ế u hi ể u một cách đơn giản đây là bước dựđoán.
Tương tựnhư vậy, x ˆ k | k là ước lượ ng d ự đoán trạ ng thái x k dựa trên quan sát ở thời điểm k
Hiệp phương sai ước lượng dự đoán P k | k 1 là trung bình phương sai số trong ước lượ ng x ˆ k 1 | k 1
Mục tiêu chính của bộ lọc Kalman là tìm hệ số K, hay còn gọi là độ lợi của bộ lọc, mà sẽ thay đổi sau mỗi vòng lập tính toán Hệ số này cần thỏa mãn phương trình (6) để ước lượng trạng thái của hệ thống tại thời điểm k gần nhất với trạng thái thực của hệ thống.
2.9.2 Xử lý dữ liệu đọc từ cảm biến MPU6050
Từ các giá trị mà cảm biến MPU6050 trả về Ta sẽ dùng các công thức sẽ đề cập bên dưới để tính toán:
Đối với dữ liệu lấy về từ Gyro:
Ta sẽtính được vận tốc góc theo các trục bằng công thức: gyroRate = gyroRead / [LSB Sensitivity] (2.38)
- gyroRate: Vận tốc góc đơn vị là (degree/second)
- gyroRead: Là dữ liệu (16bit) đọc về từ Gyro của MPU6050
[LSB Sensitivity]: Hệ số suy ra vận tốc góc, nó phụ thuộc vào việc thiết đặt chế độ hoạt động của Gyro trong MPU6050
Từ vận tốc góc ta suy ra giá trịgóc xoay như sau: gyroAnglek = gyroAnglek-1 + gyroRatek*∆t (2.39)
- gyroAnglek: Giá trị góc xoay cần tìm
- gyroAnglek-1: Giá trịgóc xoay ngay trước thời điểm (k)
- gyroRatek: Giá trị vận tốc góc tính được tại thời điểm (k)
- ∆t: Khoảng thời gian tính từ trạng thái (k - 1) đến (k)
Đối với dữ liệu lấy về từ Accelerometer, ta có công thức góc xoay như sau: Roll = atan2(accY,accZ)*RAD_TO_DEG (2.40)
Pitch = atan(-accX / sqrt(accY*accY + accZ*accZ))* RAD_TO_DEG (2.41) Trong đó:
- Roll: Góc xoay quanh trục X (degree) Đồ án t ố t nghi ệ p 37
- Pitch: Góc xoay quanh trục Y (degree)
- accX, accY, accZ: Gia tốc góc đọc về theo các trục X, Y, Z (m/s 2 )
- RAD_TO_DEG: Hệ số chuyển đổi từđơn vịgóc (radian) sang độ (degree)
2.9.3 Áp dụng bộ lọc Kalman cho việc xử lý tín hiệu từ cảm biến MCU6050 2.9.3.1 Thiết lập các ma trận và các vectơ cần thiết của bộ lọc Kalman
Đầu tiên, chúng ta sẽ thiết lập các ma trận và vectơ cần thiết cho bộ lọc Kalman Góc và vận tốc góc được mô tả thông qua không gian trạng thái tuyến tính.
(2.42) Trong đó: x là giá trị góc, x là giá trị vận tốc góc
Trạng thái của hệ thống vào thời điểm k được phát triển từ trạng thái của hệ thống tại thời điểm (k-1): x k Fx k 1 Bu k w k (2.42)
F và do không có tín hiệu điều khiển đầu vào nên Bu k được bỏ qua
Các ma trận \( Q_k \) và \( R_k \) là các ma trận đối xứng nửa xác định dương, đại diện cho nhiễu quá trình và nhiễu đo lường Do tính chất khó xác định của các loại nhiễu, chúng ta tạm thời đặt chúng như sau:
Người dùng sẽ gán giá trị cho các thông số trong ma trận, dựa trên độ nhiễu thu được từ đồ thị của các góc xoay được tính toán từ gyroscope và accelerometer.
Ma trận hiệp phương sai
Ma trận quan sát H 0 1 (2.47) Đồ án t ố t nghi ệ p 38
2.9.3.2 Áp dụng các phương trình tính toán của bộ lọc Kalman x form accelerometer x form gyroscope
The input-output signal diagram of the Kalman filter indicates that the rotation angle value is derived from the accelerometer sensor, while the velocity value is obtained from the gyroscope sensor The angle \( x \) represents the rotation angle after being processed through the Kalman filter.
Lưu ý rằng x và \(\dot{x}\) đại diện cho góc xoay và vận tốc của trụ đang được xem xét Để đơn giản hóa, chúng ta sẽ thiết kế bộ lọc Kalman với hai đầu vào và một đầu ra.
Tiếp theo ta sẽ thực hiện tuần tựcác bước tính toán bộ lọc Kalman:
Bước 1: Trạng thái ước đoán xˆ k | k 1 F k xˆ k 1 | k 1 B k U k
Bước 2: Dựđoán, ước tính hiệp phương sai
Bước 3: Độ lệnh đo lường
Y (2.50) Độ lệnh đo lường = Giá trị trạng thái đo lường - Giá trịđã dựđoán sẽđo được trước đó.
Bước 4: Độ lệnh hiệp phương sai
Bước 6: Cập nhận trạng thái ước đoán đã điều chỉnh x ˆ k | k x ˆ k | k 1 K k Y ~ k
Bước 7: Cập nhận hiệp phương sai ước lượng đã điều chỉnh
C ả m bi ế n Gyo-86
Cảm biến gia tốc 10 bậc tự do (10DOF) GY-86 bao gồm:
Cảm biến Gyro và gia tốc 6 trục MPU6050
La bàn số 3 trục HCM5883L
Cảm biến áp suất MS5611
Cảm biến này sử dụng giao tiếp I2C với các địa chỉ khác nhau, cho phép người dùng gửi địa chỉ truy cập của từng cảm biến để lấy dữ liệu.
MPU6050 là một IC tích hợp cảm biến gia tốc kế và cảm biến từ trường, cho phép đo tốc độ góc theo ba chiều không gian (gyro) và hình chiếu vector trọng trường lên ba trục (Accelerometer) Các giá trị thu được từ cảm biến này có thể được xử lý qua bộ lọc như AHRS Kalman để loại bỏ nhiễu, từ đó xác định các giá trị thứ cấp như tốc độ dài và tọa độ không gian.
MPU6050 là chip tích hợp hai cảm biến: vận tốc góc (gyroscope) và gia tốc góc (accelerometer)
MPU6050 cho biết vận tốc góc và gia tốc góc, từđó xác định hướng của vật trong không gian ba chiều
Kích thước: 22x17mm, lỗ bắt vít 3mm
Giao tiếp: I2C tương thích 3VDC và 5VDC
Khoảng cách chân chuẩn 2.54mm Đồ án t ố t nghi ệ p 41
Hình 2.28 Sơ đồ nguyên lý cảm biến MPU6050
Board Tiva C
Bộ công cụ này sử dụng chip ARM TM4C123GH6PM với lõi ARM M4 mạnh mẽ, bao gồm mạch nạp, MCU và các ngoại vi đơn giản như nút bấm, LED, và giao tiếp USB Cấu trúc ARM (Advanced RISC Machine) là vi xử lý 32 bit và 64 bit kiểu RISC, phổ biến trong thiết kế nhúng nhờ vào đặc điểm tiết kiệm năng lượng, giúp CPU ARM chiếm ưu thế trong các sản phẩm điện tử di động.
Các đặc tính của ARM bao gồm:
Cấu trúc nạp / lưu trữ.
Hỗ trợ tập lệnh trực giao. Đồ án t ố t nghi ệ p 42
Hầu hết các lệnh được thực hiện trong 1 chu kỳ CPU.
Chiều dài mã máy cố định, do đó dễ dàng thực hiện đường ống hóa.
Hình 2.29 Bộ KIT Tiva C Thông số kỹ thuật:
Communication: SSI/SPI, I2C, UART, USB, CAN