ứng dụng phần mềm matlab trong tính toán phân bố công suất

  • Số trang: 67 |
  • Loại file: DOC |
  • Lượt xem: 91 |
  • Lượt tải: 0
e-lyly

Đã đăng 5262 tài liệu

Mô tả:

Đồ Án Chuyên Ngành BỘ CÔNG THƯƠNG Ứng dụng Matlab CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐH Công Nghiệp TP. HCM ------------------ Độc lập - Tự do - Hạnh phúc ------------------ ĐỒ ÁN CHUYÊN NGÀNH Nhóm sinh viên số 1: Lớp: ĐHDI7TH Hệ đào tạo: ĐH chính quy. Nghành: Công nghệ kỹ thuật Điện. Tên đề tài: Ứng dụng phần mềm Matlab Trong Tính Toán Phân Bố Công Suất Kế hoạch thực hiện: Ngày giao đề tài : Trưỡng Bộ Môn trang 1 Nhóm 1 Ngày nộp đồ án : Giáo Viên Hướng Dẫn Đồ Án Chuyên Ngành Ứng dụng Matlab DANH SÁCH NHÓM STT MSSV HỌ TÊN LỚP 1 11010363 Nguyễn Văn Bắc DHDI7TH 2 11014453 Ngô Việt Cường DHDI7TH 3 11010203 Lê Văn Vương DHDI7TH 4 11016173 Nguyễn Khắc Dũng DHDI7TH 5 11014013 Lê Đình Đại DHDI7TH trang 2 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... ............................................................................................................................... Thanh Hóa, ngày ..... tháng ....... năm 2015 Giảng viên hướng dẫn trang 3 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab NHẬN XÉT (Của giảng viên phản biện ) …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ………………………………………………………………………… Ngày … tháng …năm 2015 Giảng viên phản biện trang 4 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab LỜI CẢM ƠN Trong thời gian làm đồ án tốt nghiệp, chúng em đã nhận được nhiều sự giúp đỡ, đóng góp ý kiến, động viên và chỉ bảo nhiệt tình của thầy cô giáo trong Khoa Công Nghệ - Trường Đại học Công nghiệp TP. Hồ Chí Minh cs Thanh Hóa. Chúng em xin chân thành cảm ơn quý thầy cô đã giúp chúng em có được cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ chúng em trong suốt quá trình làm đồ án và cả quá trình học tập ! trang 5 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab CHƯƠNG MỞ ĐẦU 1. Tính bức thiết của đề tài MATLAB là khả năng tính toán và biểu diễn đồ hoạ kỹ thuật nhanh chóng, đa dạng và chính xác cao. Thư viện hàm của MATLAB bao gồm rất nhiều chương trình tính toán con. Các chương trình con này giúp người sử dụng giải quyết nhiều loại bài toán khác nhau, đặc biệt là các bài toán về ma trận, số phức, hệ phương trình tuyến tính cũng như phi tuyến. MATLAB cũng cho phép xử lý dữ liệu và biểu diễn đồ hoạ trong không gian 2D và 3D với nhiều dạng đồ thị thích hợp, giúp người sử dụng có thể trình bày kết quả tính toán một cách trực quan và thuyết phục hơn. Thêm vào đó, các phiên bản MATLAB ngày càng phát triển nhiều module phần mềm bổ sung các Toolbox (bộ công cụ) với phạm vi chức năng chuyên dụng cho từng chuyên ngành cụ thể. 2. Mục đích nghiên cứu Tính toán chi tiết phân bố công suất lưới điện Miền Nam phục vụ cho thực tiễn vận hành lưới điện hợp lý nhất 3. Đối tượng và phạm vi nghiên cứu của đề tài Đề tài nghiên cứu phân bố công suất lưới điện Miền Nam, đồng thời nghiên cứu ứng dụng phần mềm Matlab mô phỏng hệ thống điện. Dùng Matlab để xây dựng chương trình mô phỏng hệ thống điện và tính toán phân bố công suất trên đó. trang 6 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab CHƯƠNG I: TỔNG QUAN MATLAB Matlab (Matrix laboratory) là chương trình lập trình ứng dụng được sử dụng trong nhiều lĩnh vực như điện, điện tử, điều khiển tự động…Matlab có thể giải quyết được nhiều bài toán đặt biệt là các bài toán về ma trận. I.1. GIAO DIỆN CỦA CHƯƠNG TRÌNH Các cửa sổ làm việc chính của Matlab gồm có: Hình 1.1. Các cửa sổ làm việc chính của Matlab Command windown: cửa sổ để nhập các lệnh và dữ liệu, đồng thời là nơi xuất các kết quả tính toán. Command history: cửa sổ lưu trữ các lệnh đã thực thi cùng với thời gian sử dụng. Current directory: cho biết các thư mục đang lưu trữ. Help (demo): trợ giúp thông tin về phần mềm. Mfile: cửa sổ để viết các lệnh lập trình, có phần mở rộng là file.m. trang 7 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab Hình 1.2. Cửa sổ Mfile 1.2. CÁC PHÉP TOÁN - TÊN BIẾN - CÁC HÀM CƠ BẢN 1.2.1.Các phép toán Các phép toán đại số: +, -, *,^, /, \ (chia trái), ' phép chuyển vị ma trận hay liên hợp phức. Các toán tử quan hệ: <, <=, >, >=, == (bằng) , =~ (khác). Các toán tử logic: & (and), | (or), ~ (not). Các hằng: pi, j, inf (vô cùng), NaN (không xác định). 1.2.2. Cách đặt tên biến Matlab có những quy định về tên biến: tên biến phải bắt đầu bằng chữ và không chứa các kí tự đặt biệt như @, %, /,Ngoài ra Matlab còn phân biệt chữ hoa với chữ thường. 1.2.3. Điều khiển vào ra Các lệnh sau dùng để đưa số liệu vào và ra: Nhập dữ liệu : input (cú pháp: tên biến = input('chuổi hiển thị')). Hiển thị nội dung của mảng hay chuổi : disp (cú pháp disp(tên biến hoặc trang 8 Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab tên chuổi cần hiển thị). Điều khiển xuất kết quả tính toán : format Lưu dữ liệu : save (cú pháp: save 'tên file' 'tên biến' 'kiểu định dạng'). 1.2.4. Một số hàm toán học cơ bản trang 9 Hàm căn bậc hai của x :sqrt(x) Hàm sin của x :sin(x) Hàm cos của x :cos(x) Hàm chuyển từ chuổi sang số : str2num(x) : Hàm chuyển từ số sang chuổi num2str(x) Nhóm 1 Đồ Án Chuyên Ngành Ứng dụng Matlab Trong các hàm lượng giác trên thì biến x có đơn vị là radian nếu x có đơn vị là độ thì ta phải đổi sang radian. 1.3. SỐ PHỨC TRONG MATLAB 1.3.1. Nhập số phức Để nhập số phức z=3+j4 ta có thể nhập từ của sổ Command Windown hoặc từ Mfile: Nhập dưới dạng đại số: >> z=3+j*4 Nhập dưới dạng cực: >> z=5*exp(j*45*pi/180) 1.3.2. Các phép toán cơ bản với số phức Lấy môđun số phức z :abs(z) Lấy acgumen số phức z :angle(z) Lấy phần thực số phức z :real(z) Lấy phần ảo số phức z :imag(z) Số phức liên hợp :conj(z) Các phép toán khác như +, -, *, / cũng giống như số thực. 1.4. MA TRẬN VÀ ỨNG DỤNG 1.4.1. Ma trận Ma trận là một mảng các số liệu gồm có m hàng và n cột: Nhóm 1- DHDI7TH trang 10 Đồ Án Chuyên Ngành Ứng dụng Matlab Có các cách nhập ma trận: . Nhập ma trận từ bàn phím (liệt kê). . Nhập từ file dữ liệu. . Tạo ma trận từ các hàm có sẵn, các hàm tự tạo. Nhập ma trận A theo kiểu liệt kê: >> A=[1 2 3 4; 5 6 7 8 9]; Nhập ma trận nhờ các hàm tự tạo: >>A=zeros(m,n) (ma trận A gồm toàn các phần tử 0, có m hàng n cột). >>A=ones(m,n) (ma trận A gồm toàn các phần tử 1) Địa chỉ mảng: Để truy xuất đến phần tử nằm ở hàng i cột j của ma trận A ta dùng lệnh: >>A(i,j) >>A(:,i) (Truy xuất tất cả các phần tử của cột i) >>A(i,:) (Truy xuất tất cả các phần tử của hàng i) 1.4.2 Các phép toán với ma trận trong Matlab Phép cộng trừ hai ma trận: >>X=A+B (X=A-B). Các ma trận A, B phải cùng kích thước. Phép nhân hai ma trận: >>X=A*B. Số cột của A phải bằng với số hàng của B. Nhân theo mảng: >>X=A.*B. Khi nhân theo mảng thì A, B phải cùng kích thước. Với phép nhân này thì các phần tử của hai ma trận này được nhân tương ứng với nhau. Phép chia ma trận: Nếu X*B=A thì X=A/B Nhóm 1- DHDI7TH trang 11 Đồ Án Chuyên Ngành Ứng dụng Matlab Nếu A*X=B thì X=A\B (phép chia trái). Chia theo mảng: >>X=A./B Phép lũy thừa ma trận: >>X=A^p (p là một số nguyên dương) . Ma trận X có được bằng cách nhân các ma trận A với nhau p lần. >>X=A.^B Phép nghịch đảo ma trận: >>X=inv(A) 1.4.3. Ứng dụng ma trận vào giải hệ phương trình Nghiệm của hệ phương trình tuyến tính có thể xác định thông qua các phép toán ma trận. Xét hệ : 1.1 Hệ (1.1) biểu diển dưới dạng ma trận: 1.2 Với A là ma trận hệ số, B và X là các vectơ cột. Nhân cả hai vế của hệ (1.2) với A-1 ta được: A-1.A.X = A-1.B hay X = A-1.B Lúc này ta sử dụng hàm: inv(A) để xác định ma trận nghịch đảo A-1 , như vậy nghiệm của hệ là: Nhóm 1- DHDI7TH trang 12 Đồ Án Chuyên Ngành Ứng dụng Matlab >>X=inv(A)*B Tuy nhiên khi det(A)=0 việc xác định ma trận nghịch đảo A-1 không chính xác. Khi đó Matlab sẽ giải hệ (1.2) bằng một hàm được lập trình sẵn và cho kết quả tin cậy hơn: >>X=A\B Giải hệ phương trình tuyến tính còn được ứng dụng để giải mạch điện thông qua phương pháp xây dựng ma trận tổng dẫn nút: Y. U=J Y là ma trận tổng dẫn của mạch điện, có dạng: Yii : tổng dẫn riêng của nút i, bằng tổng các tổng dẫn nối vào nút i. Yij : tổng dẫn tương hổ giữa nút i và j, bằng tổng các tổng dẫn nối giữa hai nút i và j nhưng ngược dấu, n = (số nút) -1. Trong đó điện thế của một nút bất kì được chọn làm chuẩn. U là vectơ điện thế tại các nút. Trừ thế của nút chọn làm chuẩn, có dạng: Nhóm 1- DHDI7TH trang 13 Đồ Án Chuyên Ngành Ứng dụng Matlab J là vec tơ dòng điện bơm vào nút. Trừ dòng bơm vào nút chọn làm chuẩn, có dạng: Giải hệ phương trình Y.U=J ta sẽ tìm được điện thế các nút, khi đã xác định được điện thế các nút ta sẽ tính được dòng điện và công suất chảy qua các nhánh. Việc giải hệ này rất đơn giản với Matlab, ta sử dụng lệnh: >> U=Y\J Hoặc: >> U=inv(Y)*J 1.5. CẤU TRÚC ĐIỀU KIỆN Cấu trúc điều kiện là một cấu trúc cơ bản trong lập trình. 1.5.1. Cấu trúc if-end Cú pháp: if lệnh 1; lệnh 2;  lệnh n; end Sơ đồ khối của cấu trúc if - end như hình 1.3: Nhóm 1- DHDI7TH trang 14 Đồ Án Chuyên Ngành Ứng dụng Matlab Hình 1.3. Sơ đồ khối cấu trúc if-end Khi biểu thức điều kiện đúng thì Matlab thực thi lệnh. Nếu sai thì thực thi các lệnh phía sau end. 1.5.2. Cấu trúc if-elseif-else-end Cú pháp: if ; elseif ; else ; end Sơ đồ khối của cấu trúc ifelseif-else-end như hình 1.4: Nhóm 1- DHDI7TH trang 15 Đồ Án Chuyên Ngành Ứng dụng Matlab Hình 1.4. Sơ đồ khối cấu trúc if-elseif-end Nếu điều kiện 1 đúng thì thực hiện khối lệnh 1, nếu sai Matlab sẽ kiểm tra biểu thức điều kiện 2. Nếu điều kiện 2 sai thì Matlab sẽ thực hiện các lệnh nằm trong khối lệnh 3. 1.6. CẤU TRÚC LẶP 1.6.1. Cấu trúc for-end Cú pháp: for =:: ; end Sơ đồ khối của cấu trúc for-end như hình 1.5: Nhóm 1- DHDI7TH trang 16 Đồ Án Chuyên Ngành Ứng dụng Matlab Hình 1.5. Sơ đồ khối cấu trúc for-end Bước tăng có thể được mặc định bằng 1 hoặc có giá trị dương hay âm nhưng phải phù hợp với giá trị của chỉ số đầu và chỉ số cuối. Phát biểu for-end khi số vòng lặp đã xác định. 1.6.2. Cấu trúc while-end Cú pháp: While ; end Sơ đồ khối như hình 1.6: Nhóm 1- DHDI7TH trang 17 Đồ Án Chuyên Ngành Ứng dụng Matlab Hình 1.6. Sơ đồ khối cấu trúc while-end Phát biểu while-end khi chưa xác định rõ số vòng lặp, quá trình lặp chỉ kết thúc cùng với điều kiện đi kèm. Nếu điều kiện kiểm tra không rõ ràng thì chương trình có thể không thoát ra được. Trong trường hợp này nhấn tổ hợp phím Ctrl+C để dừng chương trình. 1.6.3. Cấu trúc switch-case Cú pháp: switch case case ............ case Nhóm 1- DHDI7TH trang 18 Đồ Án Chuyên Ngành Ứng dụng Matlab otherwise end Nếu giá trị của biểu thức đứng sau switch trùng với giá trị thử i thì Matlab sẽ thực hiện khối lệnh i rồi chuyển sang các lệnh đứng sau end. Trong trường hợp giá trị của biểu thức đứng sau switch không trùng với giá trị thử nào thì Matlab sẽ thực thi các lệnh đứng sau otherwise. 1.7. ĐỒ HỌA 2D TRONG MATLAB 1.7.1. Lệnh vẽ Đồ họa 2D ta dùng lệnh: plot. 1.7.2. Đặc tả kiểu đường vẽ Ta có thể dùng các kiểu đường vẽ khác nhau khi vẽ hình. Ví dụ: vẽ hàm y=x^2. Nguyên tắc : vẽ từng điểm và nối chúng lại với nhau. Lệnh vẽ : >> x=[-4 -3 -2 -1 0 1 2 3 4] %tạo ra mảng x >>y=x.^2 %tạo ra mảng y >>plot(x,y,'--' ) %vẽ bằng đường nét đứt. Các kiểu đường vẽ xác định như sau: Đường liền : -Đường nét đứt : Đường chấm gạch : --Đường chấm chấm: : -. 1.7.3. Đặc tả kích thước, màu của đường vẽ và kiểu đánh dấu của điểm Kích thước đường vẽ được xác định bằng các hàm: Độ rộng đường thẳng Màu của khối đánh dấu :LineWidth :MarkerFaceColor Màu các cạnh của khối đánh dấu :MarkerEdgeColor Nhóm 1- DHDI7TH trang 19 Đồ Án Chuyên Ngành Kích thước khối đánh dấu Ứng dụng Matlab :MarkerSize Màu của đường vẽ xác định bằng các tham số: Red :r Green :g Blule :b Cyan :c Mangeta :m Black :k Yellow :y White :w Kiểu của điểm xác định bằng các tham số: Vòng tròn : o Dấu sao : * Ngũ giác : p Hình vuông : s Điểm : . Chữ thập : x 1.7.4. Thêm đường vẽ vào đồ thị Để thêm đường vẽ vào đồ thị mà vẫn giữu nguyên đồ thị cũ ta dùng lệnh hold on. 1.7.5. Đặt các thông số cho trục Ta có thể quy định giá trị của các trục theo ý riêng. Để thực hiện ta dùng lệnh axis. Cú pháp:axis ([ xmin , xmax , ymin , ymax]) 1.8. GIAO DIỆN ĐỒ HỌA GUIDE TRONG MATLAB GUI cung cấp các công cụ có khả năng liên kết các môi trường tính toán và đồ họa làm tăng tính trực quan và sinh động của vấn đề. Để khởi động GUI, từ của sổ Command Windown ta gõ lệnh guide, khi đó cửa sổ GUI xuất hiện: Nhóm 1- DHDI7TH trang 20
- Xem thêm -