Xây dựng Web Server

Một phần của tài liệu Thiết kế hệ thống điều khiển phân tán đèn giao thông trong phạm vi đô thị (Trang 43)

Yêu cầu đặt ra là Website phải chức năng đăng nhập cho người quản trị (Administrator), chức năng điều khiển các chốt đèn giao thông, ngoài ra còn có khả

void i2c_write(int addr, const unsigned char *buf, int count) {

if (count <= 0) return; mutex_lock(&i2c_mtx); /* Turn on I2C clock */

s3c_regset32(&CLKCON, 1 << 16);

/* Set mode to master transmitter and enable lines */ IICSTAT = I2C_MODE_MASTER | I2C_MODE_TX | I2C_RXTX_ENB; /* Set buffer start and count */

buf_ptr = (unsigned char *)buf; buf_count = count;

/* Send slave address and then data */ SRCPND = IIC_MASK;

INTPND = IIC_MASK;

IICCON |= I2C_TXRX_INTENB;

/* Load slave address into shift register */ IICDS = addr & 0xfe;

/* Generate START */

IICSTAT = I2C_MODE_MASTER | I2C_MODE_TX | I2C_START | I2C_RXTX_ENB; if (wakeup_wait(&i2c_wake, HZ) != OBJ_WAIT_SUCCEEDED)

{

/* Something went wrong - stop transmission */ int oldlevel = disable_irq_save();

i2c_stop();

restore_irq(oldlevel); }

/* Go back to slave receive mode and disable lines */ IICSTAT = 0;

/* Turn off I2C clock */

s3c_regclr32(&CLKCON, 1 << 16); mutex_unlock(&i2c_mtx); }

năng hiển thị tin tức, xem thông tin tắc đường,… Hình 3.11 là sơ đồ về các chức năng của website.

H  th ng đi u khi n  đèn giao thông

Tin t c

Thông tin giao thông

Tin t c

Tin t c

Thông tin giao thông

B n đ Qu n tr /  Administrator Qu n tr tin t c Qu n tr ch t giao  thông Hình 3.11 : Sơđồ chức năng của Website 3.3.2 Thiết kế Cơ sở dữ liệu

Để điều khiển các chốt đèn giao thông, vậy hệ thống phải quản lý các ngã tư giao thông trên một địa bàn tại khu vực (Ở đây là khu vực thành phố Hà Nội), chính vì vậy phải yêu cầu thiết CSDL để lưu trữ thông tin về các chốt ngã tư, trạng thái, hay các thông số cần thiết khác.

Ở đây, MS SQL Server 2008 được dùng để thiết kế CSDL, vì .NET Framework hỗ trợ rất tốt cho MS SQL Server, các thư viện thao tác với CSDL đã sẵn có, thêm nữa SQL Server 2008 có tính bảo mật rất tốt và dễ sử dụng.

a. Mô tả các bảng trong CSDL

Từ yêu cầu trên, sau đây là các bảng được thiết kế: (adsbygoogle = window.adsbygoogle || []).push({});

Đèn giao thông

Để lưu giữ thông tin các nút đèn giao thông

Bảng 3.1 – TrafficLight Table TrafficLight

Ký hiệu Kiểu Mô tả Khóa

Traff_ID Int Mã đèn giao thông Khóa chính

Traff_Name nvarchar(100) Tên chốt đèn giao thông Traff_Second_Green Int Thời gian đèn xanh

Traff_Second_Red Int Thời gian đèn đỏ

Traff_Status bit Trạng thái

Traff_X Float Vị trí X trong bản đồ số

Traff_Y Float Vị trí Y trong bản đồ số

District_ID Int Mã quận,huyện Khóa ngoại

Tham chiếu đến bảng District

Tên quận huyện

Bảng 3.2 – District Table District

Ký hiệu Kiểu Mô tả Khóa

District_ID Int Mã quận Khóa chính

District_Name Nvarchar(50) Tên

Description Nvarchar(100) Miêu tả

Quyền - Role

Lưu giữ thông tin về quyền hạn cho phép phân quyền người dùng

Bảng 3.3 –Role Table Role

Ký hiệu Kiểu Mô tả Khóa

RoleID Int Mã quyền Khó chính

RoleName Nvarchar(50) Tên quyền

Người dùng - User

Lưu giữ thông tin người dùng.

Bảng 3.4 – User Table User

Ký hiệu Kiểu Mô tả Khóa

UserID Int Mã quận Khóa chính

Username Nvarchar(30) Tên đăng nhập (adsbygoogle = window.adsbygoogle || []).push({});

Password Nvarchar(30) Mật khẩu

RoleID Int Mã quyền Khóa ngoại

Tin tức - News

Lưu giữ thông tin tin tức

Bảng 3.5 – News Table News

Ký hiệu Kiểu Mô tả Khóa

IDNews Int Mã tin tức Khóa chính

IDGroupNews Int Mã nhóm tin Khóa phụ

IDUser Int Mã người dùng Khóa phụ

Title Nvarchar(200) Tiêu đề tin

Shortcut Nvarchar(100) Tóm tắt

Body Nvarchar(Max) Nội dung

CreateDate Datetime Ngày đưa tin

Picture Nvarchar(200) Đường dẫn ảnh

Nhóm tin - GroupNews

Lưu giữ thông tin người dùng.

Bảng 3.6 – GroupNews Table GroupNews

Ký hiệu Kiểu Mô tả Khóa

IDGroupNews Int Mã nhóm tin Khóa chính

Title Nvarchar(200) Tiêu đề

Description Nvarchar(200) Mô tả

Hình 3.12 : Sơđồ quan hệ trong CSDL

Từ hình ta thấy quan hệ giữa các bảng với nhau, IDDistric thuộc bảng TrafficLight tham chiếu đến IDDistric trong bảng Distric mô tả quan hệ phụ thuộc TrafficLight tới District. IDGroupNews trong bảng News tham chiếu đến IDGroupNews là khóa chính của bảng GroupNews, mô tả quan hệ phụ thuộc của News tới GroupNews…

c. Xây dựng website bản đồ số

Google Map được sử dụng để xây dựng bản đồ số. Google Map là nguồn mở nên phát triển rất dễ dàng. Mục đích sử dụng Google Map là để hiển thị các vị trí ngã tư đang tắc đường, ngoài ra còn cho phép tìm kiếm trên bản đồ. Để hiển thị dữ liệu trên bản đồ Google cần phải có vị chính xác ngã tư đó, sau đó kiểm tra xem tại điểm đó có đang tắc đường hay không. Dưới đây là đoạn code lấy dữ liệu về thông số cần thiết và hiển thị lên website :

Code hiển thị các ngã tư tắc đường lên bản đồ :

Cách hiển thị như trên sẽ thấy trực quan hơn, người dùng sẽ dễ dàng nhận biết các chốt đang tắc đường. Hình 3-16 là giao diện trang web Google Map.

d. Giao diện Website

Website được chia thành 2 phần : Dành cho người dùng và Administrator. Dành cho người dùng:

Giao diện trang chủ (adsbygoogle = window.adsbygoogle || []).push({});

for (var city in citymap) { 

      var populationOptions = {        strokeColor: "#FF0000",        strokeOpacity: 0.8,        strokeWeight: 2,        fillColor: "#FF0000",        fillOpacity: 0.35,        map: map,        center: citymap[city].center,        radius: citymap[city].population / 20        }; 

      cityCircle = new google.maps.Circle(populationOptions);          }; 

rs.Open("SELECT * FROM TrafficLight WHERE status=1", connection); 

        rs.MoveFirst;          var i = 0; 

        while (!rs.eof) {        citymap[i] = { 

      center: new google.maps.LatLng(rs.fields(8), rs.fields(9)),        population: 8000 

      }; 

      rs.movenext;        i++; 

Hình 3.13 : Giao diện trang chủ

Thông tin tắc đường

Bản đồ

Hiển thị rõ các điểm đang tắc đường trên Google Map.

Hình 3.15 : Giao diện trang web bản đồ

3.4 Yêu cầu hệ thống

Ứng dụng được thiết kế trên nền .NET framework 3.5, cơ sở dữ liệu sử dụng MS SQL 2008 do đó yêu cầu cấu hình của PC để chạy được được mô tả chi tiết trong bảng 3.7 :

Bảng 3.7– Cấu hình tối thiểu và cấu hình khuyến nghị để chạy ứng dụng trên PC Cấu hình tối thiểu:

Pentium III 1GHz hoặc cao hơn RAM : 1GB hoặc cao hơn

.NET Framework 3.5

Microsoft SQL Server 2008 Express Edition

Cấu hình khuyến nghị:

Chip Intel Pentium 4 2.0GHz hoặc cao hơn RAM : 4GB hoặc cao hơn (Maximum 64GB)

Hệ điều hành Microsoft Windows XP Service Pack 3 hoặc cao hơn .NET Framework 3.5

Microsoft SQL Server 2008 Express Edition hoặc cao hơn Các thông tin trên được lấy ra từ trang web của Microsoft[11].

Chương 4 : Kết qu đạt được và hướng phát trin

4.1 Kết quả đạt được

Hệ thống điều khiển phân tán đèn giao thông được thiết kế cho một khu vực đô thị, sản phẩm hoàn thiện bao gồm cả phần cứng và phần mềm.

Phần cứng gồm hai module là:

- Module thiết bị điều khiển đèn.

o Mô phỏng một chốt đèn giao thông. (adsbygoogle = window.adsbygoogle || []).push({});

Hình 4.1 : Module thiết bịđiều khiển đèn

o Được sử dụng để giao tiếp với Trung tâm và chốt đèn giao thông, ngoài ra còn kết nối với Camera để lấy hình ảnh.

Phần mềm gồm có:

- Website cho người dùng xem tin tức và thông tin tắc đường, và có thể xem bản đồ để tìm đường, xem các điểm tắc đường một cách trực quan.

Hoạt động của hệ thống :

- Website được truy cập bằng trình duyệt, webiste cung cấp các chức năng như đọc tin tức, thông tin tắc đường và hình ảnh trực tiếp tại các chốt ngã tư để người dùng có thể quyết định đường đi cho mình trước khi tham gia giao thông. Hình 4.2 mô tả quá trình truyền hình ảnh từ Camera/Webcam về webiste.

Hình 4.2 : Quá trình truyền hình ảnh về Webserver

- Người quản trị, khi đăng nhập vào hệ thống, người quản trị ngoài chức năng như người dùng thông thường còn có thể :

o Đăng/Xóa tin tức

o Điều khiển tín hiệu các chốt đèn giao thông như hình 4.3

o Cập nhật trạng thái cho các chốt đèn giao thông

4.2 Đánh giá hệ thống

Hệ thống sau khi hoàn thành chạy khá ổn định, website được cài đặt, và kiểm tra trên một máy trạm (localhost). Website hoạt động ổn định, truyền tín hiệu điều khiển cho chốt đèn giao thông thành công.

Khi cài đặt sang một máy tính khác được không cần cài đặt driver cho tầng mạch, nhưng phải cài .NET Framework và cơ sở dữ liệu cho webiste hoạt động. Website cũng hoạt động ổn định, truyền tín hiệu thành công cho chốt đèn giao thông.

Website do giao diện đơn giản nên chạy khá tốt. Tuy nhiên, việc cài đặt website trên localhost khá phức tạp, khi chuyển sang một máy khác đòi hỏi phải cấu hình lại từ đầu. Thêm nữa, do được thiết kế dựa trên ASP.NET nên đòi hỏi hệ thống phải cài đặt IIS 6.0 trở lên. Tuy nhiên, tất cả đều chạy khá ổn định.

Ưu điểm của hệ thống :

- Thiết kế đơn giản, chi phí thấp và dễ lắp đặt khi sử dụng cáp đồng trục làm phương tiện truyền dẫn.

- Tốc độ truyền tin rất nhanh do sử dụng Ethernet trong mạng LAN.

- Dễ dàng thay đổi cổng giao tiếp, do Mini2440 có hỗ trợ rất nhiều cổng giao tiếp khác nhau.

- Do được được thiết kế module hóa, khi tại một ngã tư, nếu một trong hai module không làm việc thì người quản trị có thể phát hiện được.

o Mini 2440 không làm việc, tại ngã tư đó module chốt đèn vẫn làm việc bình thường, người quản trị sẽ không thể xem được camera/webcam tại ngã tư đó như hình 4.4 mô tả.

Mini 2440 Web Server Camera/ Webcam Ch t đèn giao thông Broken

Hình 4.4 : Trường hợp mini 2440 không làm việc

o Nếu chốt đèn giao thông tại một ngã tư không hoạt động, Module Mini 2440 vẫn hoạt động tốt, người quản trị vẫn xem được camera tại chốt đó, nhưng không thể điều khiển được tín hiệu.

Mini 2440 Web Server Camera/ Webcam Ch t đèn giao thông HTTP : 8080 I2C Fail

Hình 4.5 : Trường hợp chốt đèn giao thông không làm việc Nhược điểm:

Với mô hình điều khiển bằng Ethernet việc mở rộng khá phức tạp. Do các chốt được kết nối với trung tâm qua Ethernet, do đó nếu chốt ở xa trung tâm thì đòi hỏi cần phải lắp Repeater, hoặc nếu giao tiếp là Wifi, thì trên đường truyền cần lắp các AP, nhưng bù lại, tốc độ truyền tín hiệu nhanh.

Nhìn vào hình 4.6, Nếu hệ thống muốn mở rộng để quản lý nhiều chốt đèn giao thông hơn, thì cần có các switch hoặc router để quản lý các chốt đèn. Bởi vì các chốt đèn sử dụng Ethernet/Wifi interface, do đó cần một địa chỉ IP để đánh địa chỉ. Tuy nhiên, nếu hệ thống được áp dụng trong một khu vực nhỏ (các chốt đèn giao thông có khoảng cách nhỏ hơn 500m) thì hoàn toàn có khả thi.

Tuy nhiên, có một câu hỏi đặt ra là : Nếu một Switch bị hỏng, hoặc do một điều kiện nào đó mà không hoạt động thì sao? Thực tế, hệ thống điều khiển đèn giao thông giao tiếp bằng Ethernet/Wifi cũng giống như các hệ thống mạng khác, luôn đặt một hệ thống backup bên trong nó ( Hình 4.7), khi đường truyền chính không hoạt động thì luôn có một có hệ thống backup hoạt động thay.

Trung tâm Ch t đèn giao thông Ch t đèn giao thông Ch t đèn giao thông Switch Switch Ch t đèn giao thông Backup (adsbygoogle = window.adsbygoogle || []).push({});

Switch Backup Link Backup

Switch Backup Link

4.3 Hướng phát triển

Trong tương lai, Ethernet/Wifi có thể thay bằng 3G/Wimax/LTE, vì tốc độ trên 3G/Wimax/LTE rất nhanh, tuy nhiên vấn đề chính ở đây là khi thay đổi giao tiếp thì hệ thống có thay đổi toàn bộ lõi bên trong hay không và giá cả khi dùng giao tiếp mới như thế nào.

Do trong website có chức năng hiển thị đường tắc bằng Google Map, do đó chức năng định tuyến đường đi để tránh đường tắc sẽ được đưa vào website.

Ngoài ra có thể viết ứng dụng dành cho các smart phone để có thể truy cập vào website để biết chi tiết tình trạng giao thông hiện tại, định vị được vị trí của smart phone đó, đưa ra các phương án định tuyến để cho người dùng có nhiều lựa chọn.

Hệ thống hiện tại chỉ cho phép xem video trực tiếp tại các chốt, còn việc cập nhật trạng thái tắc đường đều làm bằng tay, hướng phát triển tiếp theo có thể phân tích hình ảnh của chốt ngã tư để tự nhận biết đường tắc hay không để tự động cập nhật trạng thái của chốt ngã tư.

Đặc biệt, khi triển khai hệ thống có thể khai thác thêm dịch vụ tin nhắn nội dung. Bởi vì hiện nay dịch vụ này có trên Việt nam nhưng vẫn còn sơ sài.

KT LUN

Qua thời gian thực hiện luận án, phần lớn công việc ban đầu đặt ra đã được giải quyết. Tuy nhiên một số vấn đề còn tồn tại và đó chính là vấn đề còn có thời gian để tiếp tục hoàn thiện hệ thống.

Thông qua việc làm đồ án, nhóm thực hiện đã từng bước được tiếp cận với các công nghệ hiện đại như .NET Framework 3.5, LINQ, SubSonic, Google Map,…. Nhóm thực hiện rất mong muốn được áp dụng một phần ý tưởng này vào thực tế để quản lý hệ thống đèn giao thông hiệu quả hơn.

Cuối cùng, một lần nữa xin gửi lời cảm ơn sâu sắc đến gia đình, thầy cô và các bạn đã giúp đỡ cá nhân và nhóm hoàn thành luận án này.

TÀI LIU THAM KHÁO

[1]. Wiki pedia, “Intelligent Transportation System ITS”, [Online Document, Citied 2011 August 30], Avaiable http:

http://en.wikipedia.org/wiki/Intelligent_transportation_system

[2]. Nguyễn Doãn Đông. (2009), Hệ thống điều khiển phân tán đèn giao thông, Đại học Bách Khoa Hà nội

[3].Wiki pedia, “RS 485” , [Online Document, Citied 2011 August 30]

],http://en.wikipedia.org/wiki/RS-485, Avaiable HTTP:

[4]. IEEE, “IEEE Standar for Ethernet 802.3”, [Online Document, Citied 2011 August 30], Avaiable HTTP:

http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=4293165

[5].Wiki pedia, “Cáp xoắn STP,UTP”, [Online Document, Citied 2011 August 30], Avaiable HTTP: http://vi.wikipedia.org/wiki/C%C3%A1p_xo%E1%BA%AFn

[6].Wiki pedia, “Wi-Fi”m [Online Document, Citied 2011 August 30], Avaiable HTTP: http://vi.wikipedia.org/wiki/Wi-Fi

[7].IEEE, “IEEE Standar for Wimax 802.16”, [Online Document, Citied 2011 August 30], Avaiable HTTP:

http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=1543918

[8].Microsoft Developer Network, “ASP.NET Microsoft Library”, [Online Document, Citied 2011 August 30], Avaiable HTTP: http://msdn.microsoft.com/en- us/aa336522

[9].FriendlyARM, “Mini2440 S3C2440 ARM9 Board”, [Online Document, Citied 2011 August 30], Avaiable HTTP:

http://www.friendlyarm.net/products/mini2440

[10]. FriendlyARM, “Mini 2440 Sepcification”, [Online Document, Citied 2011 August 30], Avaiable HTTP: http://www.friendlyarm.net/products/mini2440/spec/

[11].Microsoft Developer Network, “Hardware and Software Requirements for install Microsoft SQL Server 2008”, [Online Document, Citied 2011 August 30], Avaiable HTTP: http://msdn.microsoft.com/en-us/library/ms143506.aspx

[12]. Google Code, “mjpg streamer for mini2400”, [Online Document, Citied 2011 August 30], Avaiable HTTP: http://code.google.com/p/mjpg-streamer-mini2440/ (adsbygoogle = window.adsbygoogle || []).push({});

Một phần của tài liệu Thiết kế hệ thống điều khiển phân tán đèn giao thông trong phạm vi đô thị (Trang 43)