cb cb cb U S I 3 = ; và cb cb cb I U Z 3 cb cb cb S U Z 2 Về nguyên tắc có thể chọn giá trị công suất cơ bản Scb bất kỳ, nhưng nhìn chung cần phải chọn Scb sao cho bài toán ñược giải dễ
Trang 1BỘ GIÁO DỤC VÀ ðÀO TẠO TRƯỜNG ðẠI HỌC NÔNG NGHIỆP HÀ NỘI
- -
LÊ TIẾN DŨNG
ỨNG DỤNG PHẦN MỀM MATLAB TRONG GIẢI TÍCH MẠNG ðIỆN ÁP DỤNG ðỐI VỚI MẠNG ðIỆN
HUYỆN VŨ THƯ TỈNH THÁI BÌNH
LUẬN VĂN THẠC SĨ KỸ THUẬT
Chuyên ngành : ðiện khí hóa SX Nông nghiệp và Nông thôn
Người hướng dẫn khoa học: TS TRẦN QUANG KHÁNH
HÀ NỘI - 2012
Trang 2LỜI CAM ðOAN
Tôi xin cam ñoan luận văn này là công trình khoa học của riêng tôi thực hiện dưới sự hướng dẫn của TS Trần Quang Khánh Các số liệu sử dụng trong luận văn này ñều ñược thu thập từ những nguồn gốc hợp pháp và có trích dẫn rõ ràng Những tài liệu ñặc biệt ñều ñã ñược sự ñồng ý của tác giả khi trích dẫn và
sử dụng trong luận văn
Tác giả
Lê Tiến Dũng
Trang 3LỜI CẢM ƠN
ðể hoàn thành luận văn này tôi ñã nhận ñược sự hướng dẫn rất nhiệt tình của thầy giáo TS Trần Quang Khánh cùng với những ý kiến ñóng góp quý báu của các thầy giáo, cô giáo Bộ môn ðiện kỹ thuật – Khoa cơ ñiện, Viện sau ðại học Trường ðại học Nông nghiệp Hà Nội ñã ñọc và ñóng góp nhiều ý kiến quý báu ñể luận văn của tôi ñược hoàn chỉnh hơn Tôi xin bày tỏ lòng cảm ơn chân thành và sâu sắc nhất tới những sự giúp ñỡ quý báu ñó
Tôi xin chân thành cảm ơn Trường ðại học Công nghiệp Thành phố Hồ Chí Minh ñã tạo ñiều kiện cần thiết cho việc nghiên cứu luận văn
Tôi xin bày tỏ sự biết ơn chân thành tới gia ñình, ñồng nghiệp và bạn bè những người ñã luôn bên tôi giúp ñỡ về vật chất cũng như tinh thần trong suốt quá trình học tập và hoàn thành luận văn
Hà Nội, ngày 15 tháng 4 năm 2012
Tác giả
Lê Tiến Dũng
Trang 4
CHƯƠNG 1 TỔNG QUAN VỀ BÀI TOÁN GIẢI TÍCH MẠNG ðIỆN
Trang 52.1.1 Nội dung phương pháp Gauss-Seidel 17
CHƯƠNG 4 CHƯƠNG TRÌNH GIẢI TÍCH MẠNG ðIỆN BẰNG
PHƯƠNG PHÁP NEWTONRAPHSON TRONG MÔI
Trang 64.3 đánh giá chương trình 61
Trang 7DANH MỤC BẢNG
Trang 8
DANH MỤC HÌNH
Trang 9
LỜI NÓI ðẦU
Ngày nay, trong xu thế hội nhập, quá trình công nghiệp hóa hiện ñại hóa ñất nước ñang diễn ra một cách mạnh mẽ Trong quá trình phát triển ñó, ñiện năng ñóng vai trò rất quan trọng Nó là một dạng năng lượng ñặc biệt, có rất nhiều ưu ñiểm như: dễ chuyển hóa thành các dạng năng lượng khác ( như cơ năng, hóa năng, nhiệt năng ), dễ dàng truyền tải và phân phối Do ñó ngày nay ñiện năng ñược sử dụng rộng rãi trong hầu hết các lĩnh vực của ñời sống
Cùng với xu hướng phát triển mạnh mẽ của nền kinh tế, ñời sống xã hội ngày càng ñược nâng cao, nhu cầu sử dụng ñiện năng trong các lĩnh vực công nghiệp, nông nghiệp, dịch vụ tăng lên không ngừng Bên cạnh việc phát triển mở rộng hệ thống thì việc áp dụng các tiến bộ khoa học kỹ thuật,các chương trình phần mềm cũng ñược quan tâm ðối với những sinh viên ngành hệ thống ñiện thì ngoài việc nắm bắt kiến thức chuyên ngành còn phải trau dồi kiến thức về các ứng dụng khoa học kỹ thuật trong ngành Chúng em ñã may mắn ñược nhà trường cho tiếp cận với nhiều phần mềm trong ñó có phần mềm Matlab Qua học tập nghiên cứu em thấy ñây là phần mềm có nhiều ứng dụng ñối với khoa học kỹ thuật nói chung và ngành ñiện nói riêng, tuy nhiên nó chưa nhận ñược sự quan tâm của mọi người
Chính vì vậy em ñã thực hiện ñề tài “ Ứng dụng phần mềm Matlab trong giải tích mạng ñiện truyền tải” nhằm tìm hiểu, học hỏi thêm những kiến thức về phần mềm Matlab ðồng thời mang ñến cho mọi người cái nhìn mới về chương trình và những ứng dụng tuyệt vời của nó Với ñề tài “ Ứng dụng phần mềm Matlab trong giải tích mạng ñiện áp dụng ñối với mạng ñiện Vũ Thư tỉnh Thái Bình” ñề tài sẽ nghiên cứu phần giải tích mạng ñiện truyền tải trong khu vực Vũ Thư và lân cận
Tuy nhiên ñây chỉ là một chương trình nhỏ và không tránh khỏi những thiếu sót hạn chế song mong rằng phần mềm sẽ ngày càng ñược sử dụng nhiều hơn trong học tập và nghiên cứu
Vì thời gian và kiến thức có hạn nên ñề tài không tránh khỏi những thiếu xót, rất mong những ý kiến ñóng góp của quý thầy cô và các bạn
Hà nội , ngày tháng năm 2012
Học viên thực hiên
LÊ TIẾN DŨNG
Trang 10CHƯƠNG 1 TỔNG QUAN VỀ BÀI TOÁN GIẢI TÍCH MẠNG
ðIỆN VÀ PHẦN MỀM MATLAB
Một trong những bài toán cơ sở quan trọng của ngành ñiện là bài toán giải tích mạng Trải qua bao nhiêu năm xây dựng và phát triển của ngành ñiện bài toán giải tích mạng vẫn luôn ñóng vai trò là bài toán mở ñầu cần nghiên cứu với mọi sinh viên ngành ñiện
1.1 Tổng quan về ứng dụng của bài toán giải tích mạng ñiện
Bài toán giải tích mạng ñiện ñược thực hiện ñể xác ñịnh các tham số chế ñộ tại các ñiểm nút của mạng ñiện, trên cơ sở ñó ñánh giá hiệu quả truyền tải ñiện năng của các ñường dây và chất lượng ñiện tại các vị trí khác nhau Công dụng của bài toán giải tích mạng ñiện:
1.1.1 ðối với công tác vận hành:
- Lập kế hoạch ñiều ñộ;
- Lập kế hoạch bảo dưỡng;
- Phân tích ngẫu nhiên chế ñộ mạng ñiện;
- Kế hoạch bảo vệ mạng ñiện;
- Kiểm tra tình trạng mang tải của các phần tử;
- Kiểm tra ñiện áp tại các nút
1.1.2 ðối với công tác quy hoạch:
- Lập kế hoạch ñầu tư trang thiết bị ñiện;
- Nghiên cứu mở rộng nguồn;
- Cải tạo hệ thống hiện tại
1.1.3 ðối với công tác ổn ñịnh hệ thống ñiện:
- Ổn ñịnh tần số;
- Ổn ñịnh ñiện áp;
- Ổn ñịnh tín hiệu nhỏ
1.1.4 ðối với bài toán tối ưu hóa hệ thống ñiện:
- ðiều khiển dòng công suất tối ưu;
- ðiều phối kinh tế;
- Tối ưu hóa ñầu tư thiết bị ñiện
Trang 111.2 ðặc ñiểm bài toán giải tích mạng ñiện
1.2.1 ðặc tính bài toán giải tích mạng
Bài toán giải tích mạng ñiện thường ñược giải trong hệ ñơn vị tương ñối Thực chất của hệ ñơn vị tương ñối là các ñại lượng tham gia trong tính toán ñược biểu thị bằng phần trăm, hay tỷ phần của các ñại lượng ñược chọn làm cơ bản Do các ñại lượng ñiện áp, dòng ñiện và ñiện trở có mối liên hệ với nhau qua ñịnh luật Ohm, còn công suất thì tỷ lệ thuận với tích của ñiện áp và dòng ñiện nên người ta chỉ cần chọn hai ñại lượng cơ bản là công suất Scb và ñiện áp Ucb, còn các ñại lượng khác thì ñược suy ra từ các biểu thức thông dụng
cb
cb cb
U
S I
3
= ; và
cb
cb cb
I
U Z
3
cb
cb cb
S
U Z
2
Về nguyên tắc có thể chọn giá trị công suất cơ bản Scb bất kỳ, nhưng nhìn chung cần phải chọn Scb sao cho bài toán ñược giải dễ nhất (các con số tính toán không quá lớn, cũng không quá nhỏ và lẻ), thường thì Scb lấy bằng bội số của các công suất ñịnh mức của các phần tử tham gia trong mạng ñiện hoặc bằng giá trị công suất ñịnh mức của một trong các phần tử ñó; Còn ñiện áp cơ bản thì lấy bằng ñiện áp ñịnh mức ở nơi cần khảo sát Trong các trường hợp chung, chế ñộ cơ bản ñược chọn với công suất là Scb=100 MVA và ñiện áp cơ bản bằng ñiện ñịnh mức của lưới Ucb = Un
Các ñại lượng trong hệ ñơn vị cơ bản ñược biểu thị với ký hiệu pu (per-unit)
Khi các giá trị của các ñại lượng cơ bản ñã biết, thì giá trị của các ñại lượng bất kỳ trong hệ ñơn vị tương ñối ñược xác ñịnh bằng tỷ số giữa các giá trị thực tế và giá trị
cơ bản, theo các biểu thức sau:
cb pu
S
S
S = ;
cb pu
U
U
cb pu I
I
I = ; (1.2)
cb pu Z
Z
cb pu
Z
R
cb pu
Z
X
X và B pu =B.Z cb (1.3) Khi thay ñổi công suất cơ bản từ giá trị Scbcuthành Scbmoi thì giá trị ñiện trở trong hệ ñơn vị mới ñược chuyển ñổi như sau:
cu
cb
moi cb cu pu
moi pu
S
S Z
Trang 12Các ñại lượng mạng ñiện trong hệ ñơn vị tương ñối cũng tuân theo các ñịnh luật của mạng ñiện, cụ thể là:
Spu = Upu.I*pu; (1.5)
Upu=Zpu.Ipu ; (1.6)
Ký hiệu (*) biểu thị liên hiệp phức của ñại lượng tương ứng
Công suất phụ tải ba pha:
23
p d p
P P
S
U S
p cb cb
d pu
S
S U
U
* ) 3 ( 2
p pu
pu pu
S
U
Việc áp dụng hệ ñơn vị tương ñối có những ưu ñiểm sau:
- ðơn giản hóa sự so sánh các giá trị của các biến ở các chế ñộ làm việc khác nhau Chẳng hạn, nếu ñiện áp ở một ñiểm nào ñó có giá trị 1,5 tức là nó gấp 1,5 lần giá trị ñiện ñịnh mức của mạng
- ðiện trở thay ñổi không ñáng kể khi công suất và ñiện áp nguồn cung cấp cho thiết bị thay ñổi Ví dụ ñối với tất cả các máy biến áp dãi công suất từ 3 ñến 300 kVA ñiện trở phản kháng tản thay ñổi trong phạm vi từ 0,01 ÷ 0,03 pu, còn ñiện trở cuộn dây thay ñổi trong khoảng 0,01 ÷ 0,005 pu Về phần mình, ñối với các máy biến áp công suất 300 kVA ÷ 300 MVA ñiện trở phản kháng thay ñổi trong phạm
vi 0,03 ÷ 0,12 pu, còn ñiện trở cuộn dây thay ñổi trong phạm vi 0,005 ÷ 0,002 pu Như vậy, nếu các tham số của máy biến áp công suất 10 kVA chưa biết, thì có thể lấy giá trị trung bình của ñiện trở phản kháng bằng 0,02 pu và ñiện trở cuộn dây bằng 0,007 pu, mà không gặp phải sai số ñáng kể
- Các phép tính trong hệ ñơn vị tương ñối khá ñơn giản Khi tất cả các ñiện trở của các phần tử nối tiếp ñược xác ñịnh ở hệ ñơn vị tương ñối, thì tổng trở ñược xác ñịnh ñơn giản bằng phép lấy tổng mà không cần quan tâm ñến hệ số biến áp
Trang 131.2.2 Mô hình hóa bài toán giải tích mạng ñiện
Trong một mạng ñiện thường có các thành phần cơ bản như ñường dây, máy biến áp, các bộ tụ ñiện tĩnh, kháng ñiện, phụ tải, máy phát v.v Qua các bước biến ñổi , mô hình hóa giúp các thành phần cơ bản của mạng ñiện với những thông số cho trước trở nên dễ nắm bắt hơn dưới dạng các phương trình biểu thị thông số của phần tử và mối quan hệ giữa các phần tử với nhau thông qua các ma trận tham số
Sự trình bày rõ ràng chính xác phù hợp với mô hình toán học là bước ñầu tiên trong giải tích mạng ñiện Mô hình phải diễn tả ñược ñặc ñiểm của các thành phần mạng ñiện riêng biệt như mối liên hệ chi phối giữa các thành phần trong mạng Phương trình ma trận mạng cung cấp cho mô hình toán học những thuận lợi trong việc giải bằng máy tính số Các thành phần của ma trận mạng phụ thuộc vào việc chọn các biến một cách ñộc lập, có thể là dòng hoặc áp Vì lẽ ñó, các thành phần của ma trận mạng sẽ là tổng trở hay tổng dẫn
ðặc ñiểm riêng của các thành phần mạng ñiện có thể ñược trình bày thuận lợi trong hình thức hệ thống ma trận gốc Ma trận diễn tả ñược ñặc ñiểm tương ứng của mỗi thành phần, không những cung cấp nhiều thông tin liên quan ñến kết nối mạng ñiện Nó là cần thiết, vì vậy biến ñổi hệ thống ma trận gốc thành ma trận mạng là diễn tả ñược các ñặc tính quan hệ trong lưới ñiện Hình thức của ma trận mạng ñược dùng trong phương trình ñặc tính phụ thuộc vào cấu trúc làm chuẩn là nút hay vòng Trong cấu trúc nút làm chuẩn biến ñược chọn là nút áp và nút dòng Trong cấu trúc vòng làm chuẩn biến ñược chọn là vòng ñiện áp và vòng dòng ñiện.Sự tạo nên ma trận mạng thích hợp là phần việc tính toán của chương trình máy tính số cho việc giải bài toán hệ thống ñiện
1 2.3 Phương trình ñặc tính của mạng ñiện
Mạng ñiện là sự ghép nối tập hợp các nhánh có mối liên hệ với nhau.Trong cấu trúc nút qui chiếu ,thành phần của mạng ñiện có mối liên hệ với nhau ñược diễn
tả bởi n-1 phương trình ñộc lập, với n là số nút.Trong kí hiệu ma trận các thành phần của phương trình ñối với tổng trở là :
Enut = Znut Inut (1.11)
Hay ñối với tổng dẫn là :
Trang 14Inut = Ynut Enut (1.12)
Trong ñó : Enut là vecto ñiện áp nút ño ñược với nút qui chiếu ñã chọn;
Inut là vecto dòng ñiện nút ñưa vào;
Znut là ma trận tổng trở nút có các thành phần của ma trận
là tổng trở truyền hở mạch giữa các ñiểm;
Ynut là ma trận tổng dẫn nút có các thành phần của ma trận là tổng dẫn truyền ngắn mạch giữa các ñiểm
Trong cấu trúc nhánh cây tham khảo thành phần của mạng ñiện có mối liên hệ với nhau ñược thể hiện bởi b phương trình nhánh cây ñộc lập Với b là số nhánh cây Trong kí hiệu ma trận các thành phần của chương trình ñối với tổng trở là :
Enhanhcay = Znhanhcay.Inhanhcay (1.13)
Hay ñối với tổng dẫn là :
Inhanhcay = Ynhanhcay. Enhanhcay (1.14)
Trong ñó : Enhanhcay là vecto ñiện áp qua nhánh cây;
Inhanhcay là vecto dòng ñiện ñi qua nhánh cây;
Znhanhcay là ma trận tổng trở của nhánh cây có các thành phần của
ma trận là tổng trở truyền hở mạch giữa các ñiểm của các nhánh cây trong mạng ñiện;
Ynhanhcay là ma trận tổng dẫn của nhánh cây có các thành phần của ma trận là tổng dẫn truyền ngắn mạch giữa các ñiểm của các nhánh cây trong mạng ñiện
Trong cấu trúc vòng tham khảo các thành phần của mạng ñiện có mối liên hệ
với nhau ñược thể hiện bởi 1 phương trình vòng ñộc lập Với 1 là số nhánh bù cây
hay số vòng cơ bản Phương trình ñặc tính ñối với dạng tổng trở là :
Evong = Zvong Ivong (1.15)
Hay ñối với dạng tổng dẫn là:
Ivong = Yvong Evong (1.16)
Trong ñó : Evong là vecto ñiện áp của vòng cơ bản;
Ivong là vecto dòng ñiện của vòng cơ bản;
Zvong là ma trận tổng trở vòng;
Yvong : là ma trận tổng dẫn vòng
Trang 16n n
U U
Y Y
Y
Y Y
Y
Y Y
2 1
2 22
21
1 12
ii y Y
Trang 171.3 Khái quát chung về Matlab
Cùng với sự phát triển nhanh chóng của tin học, MATLAB ñang ngày càng trở thành một công cụ hữu hiệu trợ giúp ñắc lực cho quá trình nghiên cứu và học tập Hiện nay ở hầu hết các trường ñại học danh tiếng trên thế giới MATLAB ñược coi
là một môn học quan trọng trong chương trình ñào tạo các hệ, các ngành khác nhau MATLAB là một trong những hệ thống ñược soạn thảo hết sức chu ñáo, mạch lạc với việc áp dụng nhiều thuật toán phong phú, ñặc biệt như chính tên của nó –
“MATrix LABoratory”, thuật toán ma trận ñược coi là hạt nhân quan trọng trong lập trình MATLAB Cú pháp ngôn ngữ của chương trình MATLAB ñược thiết lập tinh tế ñến mức người sử dụng không có cảm giác là ñang tiếp xúc với các phép tính phức tạp của ma trận Ma trận ñược áp dụng rộng rãi trong các bài toán kỹ thuật phức tạp như hệ thống ñiện lực, tự ñộng hóa, các hệ thống cơ học ñộng, cơ học tĩnh, thủy khí v.v., vì vậy MATLAB chính là phần mềm hết sức thuận tiện và hiệu quả ñối với các lĩnh vực này Không dừng lại ở ñó, hiện nay MATLAB ñã vượt ra ngoài giới hạn của các hệ thống ma trận và trở thành một hệ thống vạn năng kết hợp (integration) cực mạnh, áp dụng cho hầu hết các lĩnh vực khoa học kỹ thuật, sinh học, hóa học v.v
1.3.1 Matlab – ngôn ngữ của tính toán kỹ thuật
- Matlab viết tắt cho “ Matrix Laboratory ”- Phòng thí nghiệm ma trận Ban ñầu Matlab ñược thiết kế bởi Cleve Moler vào những năm 1970 ñể sử dụng như một công cụ dạy học MATLAB lần ñầu tiên ñược soạn thảo bởi С В Moler từ năm
1977 ðến năm 1985 với sự ra ñời của hãng MathWorks (do John Little và C.B Moler sáng lập), MATLAB ñã trở thành một thương hiệu lớn và nó không ngừng ñược hoàn thiện với sự tham gia của nhiều chuyên gia nổi tiếng trong các lĩnh vực khác nhau Các phiên bản mới của MATLAB liên tục ñược thay thế bởi các phiên bản mới hơn (cho ñến thời ñiểm này là MATLAB version 7.7)
- Matlab là một ngôn ngữ bậc cao và môi trường tương tác cho phép bạn tiến hành các nhiệm vụ tính toán có cường ñộ lớn nhanh hơn với các ngôn ngữ lập trình như C,C++ và Fortran
- Hệ thống MATLAB ñược xây dựng trên cơ sở các thuật toán về ma trận, chứa ñựng các phương tiện tính toán thuận tiện trong kỹ thuật ñiện, ñiện tử, cơ học như:
Trang 18tốn tử phức, ma trận, vec tơ, đa thức, xử lý tín hiệu, lọc v.v MATLAB cĩ thể làm việc ở hai chế độ: tương tác và lập trình Trong chế độ tương tác MATLAB thực hiện từng lệnh được gõ trong cửa sổ lệnh sau dấu nhắc lệnh (>>) Trong chế độ lập trình một tập lệnh được soạn thảo và ghi thành một tệp đuơi m (m-file) ðể chạy chương trình chỉ cần gọi tên m-file trong cửa sổ lệnh.
- Hiện nay Matlab là một bộ phần mềm cho cơng việc tính tốn trong các ngành
kỹ thuật, trong khoa học và trong lĩnh vực tốn học ứng dụng Matlab cho ta một ngơn ngữ lập trình mạnh, giao diện đồ họa xuất sắc, và một phạm vi rất rộng các kiến thức chuyên mơn Matlab là một thương hiệu đã được thương mại hĩa của tập đồn MathWorks, Massachusetts, USA (hiện là nhà cung cấp hàng đầu thế giới về các phần mềm tính tốn kỹ thuật và thiết kế dựa trên mơ hình)
1.3.2 ðặc điểm của Matlab
- Lập trình theo nghĩa thơng thường là nhập vào máy những câu lệnh rõ ràng, theo một tình tự nhất định sao cho khi máy thực hiện theo đúng thứ tự đĩ thì sẽ cho
ta kết quả mong muốn Một khái niệm nơm na tương tự như vậy thường thấy trong các khĩa học lập trình các ngơn ngữ C,Pascal…
- Khi khởi đầu với Matlab ta hãy hiểu theo nghĩa rộng hơn: lập trình cịn cĩ các bước biểu diễn bài tốn dưới dạng các hàm và máy tính qua việc thực hiện hàm này
sẽ cho ta kết quả Phương pháp này cĩ mức độ trừu tượng cao hơn so với các câu lệnh chỉ dẫn đơn thuần
- ðể minh họa điều náy ta xét một ví dụ rất đơn giản:so sánh phép cộng hai vecto trong ngơn ngữ lập trình Pascal và Matlab:
+ Pascal biểu diễn một vecto dưới dạng mảng(array), chẳng hạn cĩ 3 vecto A,B.C và A+B=C:
Trang 19- Một ñặc ñiểm nữa của Matlab là tất cả các biến trong chương trình Pascal ñều phải ñược khai báo Trong Matlab các biến sẽ tự ñộng hình thành trong mỗi câu lệnh gán
- Trong những năm gần ñây bên cạnh các ngôn ngữ lập trình truyền thống (C,C++,Fortran) các ngôn ngữ văn lệnh (scripting languages) ñược sử dụng phổ biến hơn trong lĩnh vực nghiên cứu tính toán Matlab là một trong các ngôn ngữ như vậy, là một ngôn ngữ bậc cao,mỗi dòng lệnh Matlab thường có tác dụng tương ñương với khoảng 10 dòng lệnh của C,C++ Người lập trình sẽ tốn ít thời gian gõ câu lệnh và tập trung hơn vào nội dung chương trình
- Tuy vậy các ngôn ngữ lập trình biên dịch như C, Fortran cho phép chương trình tính toán rất nhanh và tốc ñộ cũng là một yêu cầu rất quan trọng trong các chương trình tính lớn Do ñó một cách kết hợp thông minh là phần lõi tính toán có thể ñược viết bằng ngôn ngữ biên dịch, và các thao tác nhập xuất, xử lý , hiển thị số liệu ñược viết bởi ngôn ngữ văn lệnh như Matlab
- Có thể nói MATLAB là sự kết hợp ñộc ñáo của công nghệ tin học hiện ñại với bộ sưu tập các phương pháp tính, ñược tích lũy, ñúc kết kinh nghiệm, kỹ năng qua hàng nghìn năm phát triển của toán học MATLAB thu hút hàng nghìn chuyên gia trong nhiều lĩnh vực tham gia phát triển và hoàn thiện, chính vì vậy mà liên tục
có những phiên bản mới xuất hiện thay thế các phiên bản cũ
Trang 201.3.3 Khả năng và những ứng dụng của Matlab
- Một trong những ứng dụng tuyệt vời nhất của Matlab nhìn từ góc ñộ những nhà khoa học tính toán là thư viện dựng sẵn to lớn rất phong phú các chu trình tính toán và các công cụ hiển thị ñồ họa
- Matlab cho phép người dung tiến hành rất nhiều các nhiệm vụ thong thường liên quan ñến việc giải quyết các vấn ñề một cách số học Nó cho phép chúng ta dành nhiều thời gian hơn cho việc suy nghĩ khuyến khích chúng ta thí nghiệm
- Matlab ứng dụng những thuật toán hết sức ñược trân trọng vì vậy chún ta có thể tin tưởng vào kết quả thu ñược
- Các tính toán rất mạnh có thể ñược thực hiện chỉ với 1 hoặc 2 câu lệnh
- Bạn có thể xây dựng riêng cho mình những hàm toán học cho những ứng dụng ñặc biệt
- Matlab cung cấp giao diện ñồ họa tuyệt hảo, các hình từ Matlab có thể ñem chèn vào Latex va các tài liệu Word
VD: Hãy cùng tham khảo các demo của Matlab ñể xem ta có thể làm ñược gì chỉ với vài dòng lệnh ñơn giản:
>> colormap(hsv(64))
>> z = cplxgrid(30) ; % miền không gian số phức ñơn vị z
>> cplxmap ( z , z^3) % vẽ ñồ thị hàm x = z^3 - hình 1
>> cplxroot ( 3 ) % vẽ ñồ thị hàm y = z^(1/3) – hình 2
Trang 21Hình 1.2 : ðồ thị hàm x = z3 trong không gian số phức
Hình 1.3 ðồ thị hàm số y=z^1/3trong không gian số phức
Là một hệ thống mở, MATLAB kết hợp rất nhiều phương pháp tính mà có thể
áp dụng thuận tiện cho bất kỳ người sử dụng nào MATLAB có ñặc ñiểm linh hoạt
và dễ thích nghi, vì vậy cho dù là người mới bắt ñầu hay là một chuyên gia sành sỏi,
Trang 22vẫn có thể có thể sử dụng MATLAB một cách thoải mái và cuốn hút MATLAB rất
ưu ái ựối với người sử dụng, bạn có thể tự tạo ra chương trình riêng cho chuyên môn của mình và MATLAB sẵn sàng ựáp ứng MATLAB cho phép tiếp cận và áp dụng dễ dàng các hàm có sẵn ựể giải các bài toán cần thiết và ựồng thời có thể sáng tạo ra các m.file mà khi ựược lưu giữ với thủ tục phù hợp, MATLAB coi như là các hàm của chắnh hệ thống điều ựó cho phép mở rộng khả năng vô hạn của MATLAB đó cũng chắnh là ưu ựiểm nổi bật của MATLAB mà không có chương trình nào có ựược
1.3.4 Sử dụng Matlab
+ Khởi ựộng MATLAB
để khởi ựộng MATLAB bạn chỉ cần nháy ựúp vào biểu tượng của nó, cửa sổ
lệnh command Windows của MATLAB sẽ xuất hiện Dấu nháy >> biểu thị chương
trình ựã sẵn sàng Bạn có thể nhập dữ liệu và tắnh toán trên MATLAB Ngoài cửa sổ
chắnh command Windows, MATLAB còn có cửa sổ soạn thảo Editor, bạn có thể
soạn thảo các chương trình, sửa ựổi các hàm, biến v.v trên cửa sổ này và lưu
chương trình của mình dưới dạng các Scripts (hình 1.1) Cửa sổ Command History
là cửa sổ các lệnh quá khứ cho phép lưu giữ và hiển thị tất cả các lệnh ựã sử dụng, bạn có thể lặp lại các lệnh cũ bằng cách nháy ựúp chuột vào lệnh ựó
Khi lúng túng không biết thực hiện các thao tác như thế nào thì có thể gọi lệnh Help ựể nhận sự trợ giúp
Hình 1.4 Các cửa sổ của MATLAB
Cửa sổ
Command History
Cửa sổ command Windows
Cửa sổ Editor
Trang 23+ Lập trình trong Matlab
Trong quá trình giải các bài toán ñôi khi ta phải lặp lại phép toán nhiều lần, MATLAB cho phép chúng ta soạn thảo các chương trình con ñể thực hiện hiện các phép toán này một cách thuận tiện Lập trình trong MATLAB là sự soạn thảo các lệnh theo trình tự xác ñịnh ñể giải bài toán ðể MATLAB chấp nhận, chương trình soạn thảo phải ñược cất giữ trong tệp với tên mở rộng là “.m”, nó thường ñược gọi
là tệp m.file Dưới ñây là một số khái niệm thường gặp:
- Kịch bản (script) là một chuỗi lệnh ñược soạn thảo ñể thực hiện một hoặc nhiều phép toán và ñược lưu giữ dưới dạng m.file
- Tệp hàm (function) là tệp có thêm các hàm mới ñược bổ sung vào các hàm ñã có
- Biến cục bộ (local variable) là các biến trong phạm vị một function;
- Biến toàn cục (global variable) là biến ñược sử dụng chung
- Một hàm có thể chứa cả biến chuyển giao (tham số ra – nargout) và biến nhận lại (tham số vào – nargin)
Ngôn ngữ của hệ thống MATLAB rất phong phú, nó gần như áp dụng tất cả các phương tiện lập trình ñã biết, vì vậy rất thân thiện với người sử dụng ðiều ñó cho phép soạn thảo các chương trình giải bài toán hết sức ñơn giản và thuận tiện
+ Soạn thảo scripts và hàm
Người sử dụng có thể tự tạo ra các hàm mới cất vào các m-file và chúng sẽ ñược sử dụng như các hàm của MATLAB Chương trình có thể soạn thảo bên ngoài hoặc ngay trong cửa sổ soạn thảo của MATLAB (Editor-Debugger) Tốt nhất là bạn nên soạn thảo trong cửa sổ Editor-Debugger, vì nếu soạn thảo bên ngoài thì có thể
có các ký hiệu không phù hợp, do ñó MATLAB yêu cầu phải hiệu chỉnh lại (thường những ký hiệu cần hiệu chỉnh ñược thể hiện bằng màu ñỏ) Các lệnh trong chương trình cũng ñược phân cách giống như ở cửa sổ lệnh: hoặc bằng dấu chấm phảy (;), hoặc bằng ký hiệu chuyển dòng Nhìn chung việc kết thúc chương trình không cần phải có lệnh ñặc biệt nào cả
+ Thủ tục xây dựng hàm
ðể biểu thị hàm dưới dạng functions ta cần thực hiện theo một quy tắc chặt chẽ sau: Hàm phải ñược bắt ñầu bằng từ function, sau ñó lần lượt các tham số ñầu ra, dấu = và tên hàm:
Trang 24function [tên tham số ra] = tên hàm (tên các biến vào)
Phần thân của chương trình trong hàm là các lệnh của MATLAB thực hiện việc tính toán giá trị của ñại lượng ñược nêu trong phần kết quả theo các biến ñược nêu trong phần danh sách các biến vào Các biến chỉ có tác dụng trong nội tại hàm vừa ñược khai báo Tên của các biến ñược ngăn cách nhau bằng dấu phẩy Phần giải tích ñược viết sau ký hiệu dấu phần trăm “%”, phần này sẽ không ñược MATLAB ghi nhận, do ñó nó không tham gia vào quá trình tính toán cũng như không xuất hiện trên màn hình
1.4 Kết luận về chương 1 :
- Có thể nói bài toán giải tích mạng ñiện là bài toán cơ sở ngành có nhiều tác dụng thiết thực trong việc học tập và nghiên cứu khoa học của sinh viên ngành ñiện
- Qua phần giới thiệu trên ta có thể hình dung phần nào về ñặc ñiểm cũng như các phương trình biểu thị mối quan hệ các phần tử trong mạng ñiện
- Trong mục 1.3 ñưa ñến cho ta những tiếp cận với chương trình Matlab, lịch
sử ra ñời, cách sử dụng cũng như những ứng dụng của nó trong khoa học kỹ thuật
và ñặc biệt là với ngành ñiện
Trang 25CHƯƠNG 2 CÁC PHƯƠNG PHÁP LẶP ÁP DỤNG
TRONG GIẢI TÍCH MẠNG ðIỆN
Theo lý thuyết thì cĩ hai phương pháp tồn tại đĩ là phương pháp sử dụng ma trận YNút và phương pháp sử dụng ma trận ZNút Về bản chất cả hai phương pháp đều sử dụng các vịng lặp Xét về lịch sử phương pháp thì phương pháp YNút đưa ra trước vì ma trận YNút dễ tính và lập trình, thậm chí ngày nay nĩ vẫn sử dụng với hệ thống khơng lớn lắm, phương pháp này gọi là phương pháp Gauss -Seidel ðồng thời phương pháp Newton cũng được đưa ra phương pháp này cĩ ưu điểm hơn về mặt hội tụ Sau khi cách loại trừ trật tự tối ưu và kỹ thuật lập trình ma trận vevtơ thưa làm cho tốc độ tính tốn và số lượng lưu trữ ít hơn, thì phương pháp Newton trở nên rất phổ biến Ngày nay với hệ thống lớn tới 200 nút hay hơn nữa thì phương pháp này luơn được dùng Phương pháp dùng ma trận ZNút với các vịng lặp Gauss - Seidel cũng cĩ tính hội tụ như phương pháp Newton nhưng ma trận ZNút là ma trận đầy đủ nên cần bộ nhớ hơn để cất giữ chúng, đĩ
là hạn chế chính của phương pháp này
Nội dung dưới đây chỉ giới thiệu nguyên lý của các phương pháp, cịn các phương pháp đặc biệt như: Xử lý ma trận thưa, sắp xếp tối ưu phép khử, lược đồ, khơng được đề cập đến
2.1 Phương pháp lặp Gauss-Seidel
2.1.1 Nội dung phương pháp Gauss-Seidel
Phương pháp này là một trong các phương pháp giải gần đúng rất hiệu quả Xét phương trình phi tuyến f(x)=0 Trước hết ta chia phương trình thành hai phần sao cho x = g(x) Ta giả thiết x(0) là giá trị dự đốn khởi đầu, ta tìm lại giá trị x bằng cách áp dụng bước tính tiếp theo:
Trang 26Quá trình sẽ hội tụ khi hiệu của các giá trị x ở các bước nhỏ hơn giá trị sai số cho phép ấn ñịnh:
8
1 3 2
x g x
) 1
) 2
) 3
) 4
x
x(4)-x(3)=3,543-3,529 = 0,002 < 0,01
Như vậy bài toán hội tụ sau 4 bước lặp, kết quả thu ñược x = 3,543
Bài toán có thể giải với chương trình MATLAB:
Trang 28while abs(dx) >=0.001 & iter < 100
Như vậy bài toán hội tụ với 6 bước tính x = 3,5462
Lưu ý là nghiệm bài toán phụ thuộc vào giá trị xuất phát, nếu ta chọn giá trị xuất phát ở ngoài vùng nghiệm thì có thể bài toán sẽ không hội tụ và sẽ có nghiệm khác
Phương pháp Gauss-Seidel có thể ñược biểu thị với hệ số gia tốc α:
x(k+1) = x(k) + α[(x(k)) – x(k)]
Nếu α = 1 thì phương pháp sẽ lại trở thành không gia tốc như trên
Phép lặp có thể áp dụng ñối với hệ phương trình:
Giả sử có hệ phương trình gồm n phương trình với n ẩn x1, x2, …, xn như sau:
)5.2(
2 2 1
1
2 2
1
1
2 2
2 2
22
1
21
1 1
1 2
++
++
=+
++
++
=+
++
++
=+
++
++
n n nn j
nj n
n
i n in j
ij i
i
n n j
j
n n j
j
b x a x
a x
a
x
a
b x a x
a x
a
x
a
b x a x
a x
a
x
a
b x a x
a x
a
x
a
ΛΛ
ΛΛΛΛΛΛΛΛΛΛΛ
Λ
Λ
Λ
ΛΛ
ΛΛΛΛΛΛΛΛΛΛΛ
Λ
Λ
Λ
ΛΛ
ΛΛ
Trang 29ðối với từng phương trình ta rút xi ra khỏi chính phương trình ñó, khi ñó hệ
phương trình (2.1) có dạng sau:
)6.2(
2 1
1
2 2 1
1
2 2
3 23 1
21
2
1 1
3 13 2
++
=
++
++
=
++
++
=
++
++
=
−
nn n
n
n
i n in i
i
i
n n
n n
g x b x
b x
b
x
g x b x
b x
b
x
g x b x
b x
b
x
g x b x
b x
b
x
ΛΛ
ΛΛ
Sau ñó cho X =[x1,x2, Λ x n] một giá trị ban ñầu [ ] [ [ ] [ ]0 [ ]0 ]
2 0 1 0
, ,
X B
trong ñó B và G là các ma trận hệ số bij và gi ở (2.6)
Số bước lặp k tăng dần, X[k] hội tụ tới nghiệm chính xác tuyệt ñối X* cần tìm
nếu số bước lặp là vô cùng , nhưng lặp sẽ dừng khi ñạt giá trị nghiệm gần ñúng ðiều kiện dừng lặp là:
[k+ 1] − k ≤ ε (2 8)
X X
trong ñó ε là giá trị nhỏ sai số cho trước
ðiều kiện (2.8) thoả mãn thì X[k+1] ñược coi là nghiệm
Lặp theo biểu thức (2.7) gọi là thuật toán lặp ñơn, nghĩa là giá trị gần ñúng ở
bước sau chỉ phụ thuộc vào giá trị các ẩn khác ở bước ngay trước ñó
Việc nghiên cứu ñiều kiện hội tụ của thuật toán (2.7) có liên quan ñến ma
trận B ñược ñề cập ở những tài liệu khác nhau ðể tăng mức ñộ hội tụ, Gauss và
Seidel ñã xây dựng phương pháp lặp với tinh thần chủ yếu như sau : giá trị ẩn xi[k]
ở bước [k] tính từ giá trị ẩn ñó ở bước [k-1], nghĩa là xi[k-1] và các ẩn khác xj[k] ,
j=1,2,…,n và j≠i với giá trị mới nhận ñược ở bước k ñó Tinh thần này phản ánh
quan ñiểm hệ thống và khía cạnh triết học của vấn ñề, ñó là : một ñối tượng bao
giờ cũng có quan hệ với quá khứ của nó và quan hệ với các ñối tượng khác cùng
trong hệ thống hiện tại Chính những giá trị mới nhận ñược của các ẩn tại bước [k]
ở ñây ñóng vai trò thông tin tức thời ñể hiệu chỉnh
Trang 30
Với tinh thần ñó có thể xây dựng thuật toán lặp Gauss-Seidel ñối với hệ phương trình tổng quát như sau :
)9.2(
[ 2 2 ] [ 1 1 ]-
[
] 1 [ 3
`]
1 [ 3 33 ] [ 2 32 ] [ 1 31 ]-
[
3
] 1 [ 2 ]
1 [ 2 22 ] [ 1 21 ]-
[
2
] 1 [ 1 ]
1 [ 2 12 ] 1 [ 1 11 ]-
=
++
+
=
+++
=
+++
k n
k n
k
n
k n n k
k k
k
k n n k
k k
k n n k
k k
x a x
a x a
x
x a x
a x a x a
x
x a x
a x a
x
x a x
a x
a
x
Λ
ΛΛ
Λ
Trong thuật toán trên các phương trình ñược giải vòng tròn và quá trình kết thúc khi:
)10.2(1
;
[ ]
]-1
[
n i
x
x i k+ − i k ≤ε = ÷
ðiều kiện này thoả mãn thì X[k+1] ñược coi là nghiệm
2.1.2 Sơ ñồ khối chương trình
Theo thuật toán lặp nêu trên, sơ ñồ khối cho lập trình chương trình máy tính ñược thể hiện như trên hình 1
Từ hệ phương trình mỗi phương trình rút ẩn số Ui theo các ẩn khác ta ñược:
; ) 11 2 ( 1
;
.
1
n i
Y
U Y J
U
ii
n
i i j
j ij i
Quá trình lặp bắt ñầu ñược thực hiện như sau:
- Trước hết gán giá trị ñiện áp ban ñầu [ ][ ] { [ 0 ] [ 0 ]}
2 ] 0 [ 1 0
* ]
J & = & (2.12)
Trang 31- Tính giá trị ñiện áp nút i ở bước lặp k+1 theo công thức (2.11) ta có :
,
22 3
] [ ]
1 [ 1 1 ] [
Y J
U
n
j
k j
nh ij k
nh i k
,
1
[ 1
]-1
1 [ ]-
k i nh ij i
j
k i nh ij k
i k
i
Y
U Y U
Y J
nn
n
j
k i nh ij k
n k
n
Y
U Y J
1
1
1 [ ]-
;]-
[ ]
1
[
n i
U
U i k+ − i k ≤ε = ÷
trong ñó ε là giá trị nhỏ sai số cho trước
ðiều kiện này thoả mãn thì U[k+1] ñược coi là nghiệm
Sau khi xác ñịnh ñược ñiện áp các nút dễ dàng xác ñịnh các thông số còn lại:
- Dòng các nhánh tính theo các công thức;
- Công suất các nhánh tính theo công thức:
)14.2(
3 i ij
S& = & &
11 2
] [ ]
[ 1 ] 1 [ 1
.
Y
U Y J
U
n
j
k j nh ij k
Trang 32Hình 2.2 Sơ ñồ khối thuật toán Gauss-Seidel
2.2 Phương pháp Newton-Raphson
2.2.1 Nội dung phương pháp Newton-Raphson
Khi có hàm f(x) phi tuyến, nhưng biết tồn tại nghiệm x* trong khoảng [a,b],
ta có thể tìm nghiệm gần ñúng nhờ phép lặp Newton Raphson
Giả thiết f(x) có dạng như trên hình 2.3 Tinh thần chủ yếu của phép lặp
Số liệu vào:tổng trở nhánh, phụ tải nút
Gán giá trị ñiện áp ban ñầu [U 0 ]
U[ 1]
S k=k+1
Tính các thông số khác :công suất, dòng các nhánh,……
ð
Stop Start
Trang 33Newton-Raphson như sau:
Từ một giá trị x[0] ban ñầu tuỳ ý, có f(x[0]) , từ ñó ta kẻ tiếp tuyến với f(x) và cắt trục x tại giá trị x[1] và có giá trị tương ứng f(x[1]), tiếp tục cách làm ñó ta ñi ñến nghiệm Tất nhiên phải thoả mãn một số giả thiết về f(x) ñể quá trình hội tụ tới lời giải Từ hình 2.3 viết ñược biểu thức :
)15.2()
()(
] 0 [ ]
0 [
x x
x f x
) (
] 0 [
] 0 [ ]
0 [
]
1
[
x f
x f x
Như vậy giá trị lời giải ở bước sau ñược tính từ các thông tin ở bước lặp trước Tổng quát, ta có công thức lặp ñể ñi ñến lời giải :
)16.2()
(
)(
] [
] [ ]
[ ]
1
[
k
k k
k
x f
x f x
x + = −
Quá trình lời giải dừng lại khi x[k+1]≈ x[k], nghĩa là f(x[k]) ≈ 0
Hình 2.3 Giải phương trình theo phương pháp lặp Newton-Raphson
Trong trường hợp hàm f(x) khó lấy ñạo hàm, có thể thay thế:
)17.2()
((
)
(
] 1 [ ]
[ ]
x f x f x
Trang 34Biểu thức lặp (2.17) có thể nhận ñước bằng cách khai triển hàm f(x) quanh giá trị x[k] và bỏ các vô cùng bé bậc cao
Khi có hệ phương trình phi tuyến, nghiã là f(x) là véc tơ-hàm
[ f ( x ) ] [t = f1( x ) f2( x ) fn( x ) ]
Viết dạng hệ phương trình ta có:
) 18 2 ( 0
, , ,
, ,
(
0 ,
, ,
(
2 1
2 1
n n
x x
x
f
x x
x
f
x x
x
f
Κ
Κ Κ
Thuật toán giải tìm véctơ nghiệm x*t=[x1 x2… xn] cũng tương tự như biểu thức (2.17) , nghĩa là có biểu thức lặp:
) 19 2 ( )
(
) (
] [
] [ ]
[ ]
1
[
k
k k
k
x F
x f x
trong ñó F(x[k]) ñược gọi là ma trận Jacobi của véctơ hàm f(x), mô tả các ñạo hàm riêng của f1(x),… , fn(x) theo các biến x1,… ,xn và lấy tại ñiểm x=x[k]
)20.2(
)()
()(
()(
)()
()(
)
(
2 1
2 2
2 1 2
1 2
1 1 1
n
n n
x
x f x
x f x
x f
x
x f x
x f x
x f
x
x f x
x f x
x f
x
F
Λ
ΛΛ
Ma trận Jacobi F(x) vuông, không suy biến nên thực hiện ñược thuật toán (2.20) Trong trường hợp hệ phương trình nhiều ẩn việc tính F(x[k]) ở từng bước crất cồng kềnh, thường ñể ñơn giản, có thể giữ nguyên giá trị các phần tử của F(x) cho mọi bước
Phương pháp lặp trên thường sử dụng có hiệu quả khi ñã biết vùng lân cận chứa véctơ nghiệm
Trang 35Như vậy bài toán ñược thực hiện với 5 bước lặp
Ví dụ 3 : Giải hệ phương trình theo pp Newton-Raphson
Trang 38while max(abs(dx)) >= 0.0001 & iter < 10
Kết quả thu ñược :
iter DC Jaco matrix dx x
2.2.2 Sơ ñồ khối phương pháp
Giả sử có hệ phương trình phi tuyến :
W(X)=0 (2.21)
Phương pháp Newton giải hệ (2.21) dẫn ñến giải hệ phương trình tuyến tính h
Trang 39) ( )
( (l 1 ) l)
l
X W X
Các công thức (2.22),(2.23) ñược viết cho bước lặp thứ (l+1)
Quá trình giải ñược coi là hội tụ và kết thúc ,nếu với ∀k
Q
Ở ñây Pi, Qi là các công suất tác dụng và phản kháng của nguồn hoặc phụ tải ở nút i
qi,bi là các ñiện dẫn phản kháng và tác dụng ñối với ñất ñược nối ở nút i
S(i) là tập hợp số hiệu các nút kề với nút i là các công suất tác dụng và phản kháng truyền tải trên nhánh từ nút i ñến nút j
Pij, Qij là các công suất tác dụng và phản kháng truyền tải trên nhánh từ nút i ñến nút j
Công suất phức toàn phần Sij truyền tải từ i ñến j
Sij = Pij + JQij = (Ui - KijUj)yijU*i (2.26)
Ở ñây Kij là hệ số máy biến áp của nhánh nối giữa các nút i và j
Yij là ñiện dẫn nhánh này ñược quy ñổi phù hợp với cấp ñiện áp của nút i :
Yij = Yija +J Yijr = Yij /(900 - αij) (2.27)
Ui*là ñiện áp phức liên hợp của Ui
ðiện áp ở các nút ñược biểu diễn theo môñun và góc pha của chúng :
Ui=Ui(cosδi + Jsinδi )
Uj=Uj(cosδj + Jsinδj )
(2.25 )
Trang 40Thế (2.27), (2.28) vào (2.26), sau một số biến ñổi, nhận ñược :
Aj = Uj cosδjyija - Uj sinδjyijr
Bj = Uj sinδjyija + Uj cosδjyijr
Thế (2.29) vào (2.25) nhận ñược :
ωPi=Pi - U2i(qi + yiia) + ( cos sin ) 0
)
=+
∑
∈
ij j i i j i S
j
U i
δδ
ωQi=Qi - U2i(bi + yiir) + ( cos sin ) 0
j
U i
δδ
Ở ñây yiia, yiir là ký hiệu tổng ñiện dẫn tác dụng và phản kháng riêng phần của những nhánh nối vào nút i
Có thể giải hệ phương trình phi tuyến (2.31) bằng phương pháp NewtonRaphson Khi ñó biểu thức của các phần tử trong ma trận Jacobi ñược thành lập bằng cách lấy ñạo hàm riêng của ωPi , ωQi theo các biến Ui, Uj, δi, δj một cách tương ứng
Giả thiết HTð có n+1 nút (n nút ñộc lập) trong ñó :
- ðối với các nút i := 1, ,k cho Ui = const