Ai giúp mô phỏng đèn Giao Thông bằng C/C++ với!

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • haoth2
    Nhập môn đệ tử
    • Nov 2006
    • 5

    #1

    Ai giúp mô phỏng đèn Giao Thông bằng C/C++ với!

    Mình nhận được 1 đề tài thực tập vô cùng khó khăn là: mô phỏng hoạt động của đèn giao thông. Yêu cầu của thầy giáo là: phải có phần mềm (viết bằng C/C++ hoặc Pascal) + phần cứng (mạch, cáp máy in, đèn.., đủ thứ) để mô phỏng. Mà mình đâu phải dân kĩ thuật chuyên nghiệp đâu, nên vấn đề này vô cùng khó khăn. Mong các bạn giúp đỡ cho mình thiết kế được mạch, cũng như phần mềm. Có tài liệu hướng dẫn càng tốt. Cảm ơn nhiều!!!!!
  • namqn
    Trưởng lão PIC bang
    • Feb 2006
    • 3020

    #2
    Nguyên văn bởi haoth2 View Post
    Mình nhận được 1 đề tài thực tập vô cùng khó khăn là: mô phỏng hoạt động của đèn giao thông. Yêu cầu của thầy giáo là: phải có phần mềm (viết bằng C/C++ hoặc Pascal) + phần cứng (mạch, cáp máy in, đèn.., đủ thứ) để mô phỏng. Mà mình đâu phải dân kĩ thuật chuyên nghiệp đâu, nên vấn đề này vô cùng khó khăn. Mong các bạn giúp đỡ cho mình thiết kế được mạch, cũng như phần mềm. Có tài liệu hướng dẫn càng tốt. Cảm ơn nhiều!!!!!
    Bạn cần nói rõ hơn nữa về yêu cầu. Đèn giao thông có thể mô phỏng hoàn toàn bằng vi điều khiển, lẽ đương nhiên phải có chương trình cho vi điều khiển và các chương trình này có thể viết bằng hợp ngữ, hay bằng C/Pascal/Basic, hay một ngôn ngữ cấp cao nào khác. Trong trường hợp này, việc xuất hiện của cáp máy in là không cần thiết.

    Tuy nhiên, nếu việc hiển thị cần được thực hiện trên máy tính thì phải có phương tiện giao tiếp giữa mạch điều khiển (phần cứng) và máy tính. Ngoài ra, người ta còn có thể mô phỏng hoạt động của đèn giao thông hoàn toàn trên máy tính, khi đó không cần có thêm phần cứng.

    Vậy chính xác là bạn phải làm những gì?

    Thân,
    Biển học mênh mông, sức người có hạn.

    Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
    http://www.picvietnam.com/forum/showthread.php?t=1263

    Comment

    • haoth2
      Nhập môn đệ tử
      • Nov 2006
      • 5

      #3
      Cảm ơn anh nhiều lắm. Nói chung là đề tài thực tập của em bắt buộc phải dùng phần mềm + phần cứng để mô phỏng. mà em chẳng biết phần cứng gồm những gì và lắp ráp ra sao, còn phần mềm thì không biết viết như thế nào cả. Thầy giáo bảo là : viết chương trình mô phỏng làm sao đó cho mấy cái đèn (p.cứng) sáng lên tương tự như đèn giao thông vậy đó. Em còn mơ hồ lắm, nói cũng không rõ nữa, hic, mong anh thông cảm. Anh cố gắng hiểu và giúp em nha. Em cám ơn anh nhiều.!!!
      Last edited by haoth2; 16-11-2006, 08:45 AM.

      Comment

      • namqn
        Trưởng lão PIC bang
        • Feb 2006
        • 3020

        #4
        Thầy của bạn chưa nói rõ điểm này: phần mềm đó chạy trên PC hay chạy trên phần cứng (vì bản thân các vi điều khiển cũng cần có chương trình để thực hiện một chức năng nào đó, và các chương trình này cũng được gọi là phần mềm, lẽ đương nhiên).

        Nếu phần mềm chạy trên PC, và phần cứng nằm ngoài PC, vậy bạn sẽ cần giao tiếp giữa máy tính và phần cứng. Nhưng không bắt buộc phần cứng bên ngoài PC phải có chương trình, vì có nhiều thiết kế chỉ cần dùng cổng song song để điều khiển trực tiếp các ngõ ra, nếu các ngõ ra đó không tiêu thụ quá nhiều năng lượng. Tôi đoán là thầy của bạn đang có ý định này, vì bạn không học kỹ thuật (và tôi đang thắc mắc là bạn học ngành gì?).

        Như đã nói ở trên, bạn cũng có thể mô phỏng hoạt động chỉ với phần cứng, dùng một vi điều khiển nào đó, và không cần PC. Tất nhiên bạn vẫn có đủ phần cứng (mạch của vi điều khiển và tải) và phần mềm (chương trình cho vi điều khiển).

        Thân,
        Biển học mênh mông, sức người có hạn.

        Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
        http://www.picvietnam.com/forum/showthread.php?t=1263

        Comment

        • PIC-NGHEO
          Đệ tử 2 túi
          • Jun 2005
          • 28

          #5
          Mô phỏng đèn giao thông

          Nguyên văn bởi haoth2 View Post
          Mình nhận được 1 đề tài thực tập vô cùng khó khăn là: mô phỏng hoạt động của đèn giao thông. Yêu cầu của thầy giáo là: phải có phần mềm (viết bằng C/C++ hoặc Pascal) + phần cứng (mạch, cáp máy in, đèn.., đủ thứ) để mô phỏng. Mà mình đâu phải dân kĩ thuật chuyên nghiệp đâu, nên vấn đề này vô cùng khó khăn. Mong các bạn giúp đỡ cho mình thiết kế được mạch, cũng như phần mềm. Có tài liệu hướng dẫn càng tốt. Cảm ơn nhiều!!!!!
          Lâu quá không ghé forum, hôm nay rảnh tay gởi giúp bạn haoth2, tuy nhiên bài tập được viết bằng trình Basic và chỉ mang tính cách mô phỏng đơn giản mạch lạc.

          To Bang chủ F : Xin lỗi về cái vụ hót, vì PIC-NGHEO phải đi làm nên không còn thời gian quản lý SEVER, và việc Down Sever không báo cho các ban hay là PIC-NGHEO có lỗi

          Code:
          '****************************************************************
          '*  Ten Tui : PIC-NGHEO                                         *
          '*  DE Tai  : mo phong den giao thong                           *
          '*  PIC     : 16F84A                                            *
          '*  OSC     : 4 M                                               *
          '*  Ket noi PIC : Chan 4 = +5V ( chan reset) chan 5 = GND       *
          '*                Chan 14 = +5V ( Chan nguon nuoi PIC)          *
          '* Chan 15 va 16 noi vao hai chan ngoai cua Thach anh 4 M       *
          '* chan giua cua thach anh 4M noi voi GND ( " Mat Dat")         *                                    
          '*  Date    : 11/16/2006                                        *                                              
          '*  Notes   :  Mach mang tinh cach mo phong                     *
          '*  Trinh bien dich : PICBasic Pro                              *
          '****************************************************************
          ' Bai tap chi mang tinh cach mo phong Logic tuy nhien chi can xac dinh lai thoi gian cho thay doi hieu ung 
          ' la co the mang ra duong pho xu dung ...Tam thoi !!!
           ' Huong di 1
          Den_do_1    var portb.1     'Chan thu 7 cua PIC noi voi Chan + LED Do 1 qua R han dong 470 omh
          Den_vang_1  var portb.2     'Chan thu 8 cua PIC noi voi Chan + LED Vang 1 qua R han dong 470 omh
          Den_xanh_1  var portb.3     'Chan thu 9 cua PIC noi voi Chan + LED Xanh 1 qua R han dong 470 omh
           ' Huong di 2
          Den_do_2    var portb.4     'Chan thu 10 cua PIC noi voi Chan + LED Do 2 qua R han dong 470 omh
          Den_vang_2  var portb.5     'Chan thu 11 cua PIC noi voi Chan + LED Vang 2 qua R han dong 470 omh
          Den_xanh_2  var portb.6     'Chan thu 12 cua PIC noi voi Chan + LED Xanh 2 qua R han dong 470 omh
                                     ' Chan con lai cua tat ca cac LED la chan - noi xuong GND
          Trisb = %00000000           ' Dat che do All PortB = OutPut
          Portb = 0                   ' Tat ca ngo ra cua PortB luc dau deu = 0 -> tuong ung den tat het
            ' 1 = Sang den , 0 = Tat den
          loop:  ' Bat dau bat dien
          '1-Huong 1 cam di = Huong 2 duoc di
           Den_do_1       = 1  ' sang
           Den_do_2       = 1  ' sang
           Den_vang_1     = 0  ' tat
           Den_vang_2     = 0  ' tat
           Pause 500           ' Thoi gian(500ms)cho sang cua den xanh huong 2 sang -> de phong co chu'... vuot den do !
           Den_do_2       = 0  ' tat
           Den_xanh_1     = 0  ' tat
           Den_xanh_2     = 1  ' sang
           pause 6000          ' ...cho  mot thoi gian luu thong, mo phong = 6000ms
          '2-Huong 2 chuan bi cam di = den vang 2 sang 
           Den_do_1       = 1  ' sang
           Den_do_2       = 0  ' tat
           Den_vang_1     = 0  ' tat
           Den_vang_2     = 1  ' sang
           Den_xanh_1     = 0  ' tat
           Den_xanh_2     = 0  ' tat
           pause 1000          ' Cho'` cho ba con chuan bi ngung va chuan bi di tu hai huong mo phong = 1000ms
          '3-Huong 2 cam di = Huong 1 duoc di
           Den_do_1       = 1  ' Sang
           Den_do_2       = 1  ' Sang
           Den_vang_1     = 0  ' tat
           Den_vang_2     = 0  ' tat
           Pause 500           ' Thoi gian(500ms)cho sang cua den xanh huong 1 sang 
           Den_do_1       = 0  ' Tat
           Den_xanh_1     = 1  ' sang
           Den_xanh_2     = 0  ' tat
           Pause 6000          ' ...cho  mot thoi gian luu thong, mo phong = 6000ms
          '4-Huong 1 chuan bi cam di = den vang 1 sang 
           Den_do_1       = 0  ' tat
           Den_do_2       = 1  ' sang 
           Den_vang_1     = 1  ' sang
           Den_vang_2     = 0  ' tat
           Den_xanh_1     = 0  ' tat
           Den_xanh_2     = 0  ' tat
           pause 1000
           Goto loop           ' Quay tro lai ban dau
           End
          Có gởi kèm Source + Hex fileFile trong DenGiaoThong.Zip và PIC-NGHEO đã cho mạch chạy thử -> tốt !!!
          Attached Files
          Last edited by PIC-NGHEO; 17-11-2006, 02:09 PM.
          ..::Được che chở có đáng gì? Được tự do mới quý::..

          Comment

          • haoth2
            Nhập môn đệ tử
            • Nov 2006
            • 5

            #6
            Trời ơi, các anh nhiệt tình giúp đỡ quá.Em cảm ơn nhiều nha. Bây giờ em đã hiểu sơ sơ phần nào rồi.Thực ra, đề tài của em cũng đơn giản thui, nhưng mà do em chưa biết gì về kết nối giữa máy tính với các thiết bị bên ngoài đó mà, nên đâm ra khó khăn. Em đã đọc tài liệu rồi, cũng hiểu sơ sơ về cách kết nối, còn về mạch giao thông phải thiết kế như thế nào đây. Dưới đây là đề bài cụ thể của em nè:
            Viết 1 phần mềm mô phỏng hoạt động của đèn giao thông kết hợp với phần cứng để cho sinh động. Cụ thể là: tại 1 ngã tư có 4 đèn, các đèn này phải hoạt động đúng như ngoài thực tế. Thêm 1 tình huống đặt ra (nâng cao) là: giả sử đèn đỏ đang bật ở tuyến đường có rất đông xe cộ, tuyến đường còn lại thì chỉ có 1,2 xe gì đấy, thì hệ thống đèn phải bật cho tuyến đường có đông xe đi trước. Tình huống trên là do máy tính đặt ra, và nhiệm vụ của mình phải thể hiện hệ thống đèn trên cả p.cứng lẫn p.mềm nữa. Không biết đề bài như vậy có ai giải quyết được không!!??? Chủ yếu là làm sao lắp được cái mạch để mô phỏng đó các anh ! Mong sự giúp đỡ!!!!!!

            Comment

            • hpecom
              Đệ tử 2 túi
              • Nov 2005
              • 45

              #7
              Như anh Nam đã nói: Nếu bạn làm mô phỏng thì có thể làm hoàn toàn trên máy tính.
              Nếu đã có phần cứng kết nối với máy tình thì gọi là mô hình rồi chứ không còn là mô phỏng nữa.
              Có phải bạn muốn?:
              + Làm một mô hình ngã tư có 4 trụ đèn (Đỏ - Vàng - Xanh - Số đếm lùi).
              + Dùng vi điều khiển để điều khiển trụ và giao tiếp với máy tính.
              + Máy tính dùng để cài đặt timer
              + Máy tính có thể giám sát, thu thập dự liệu và điều khiển trạm đèn. Cái này gọi là SCADA rồi .
              Phương pháp giải quyết: (của hpecom )
              + Vấn đề ít xe hay nhiều xe đến ngã tư thì bạn nên làm thật luôn cho "Xinh động" không cần phải giả từ máy tính: Đặt 1 cặp LED thu phát hồng ngoại (thực tế phải chọn giải pháp khác vì hồng ngoại chỉ phát được 12m) ở các góc ngã tư rồi dùng vật gì đó đưa qua giả như xe chạy, vi điều khiển sẽ đếm những lần cản tia hồng ngoại xem như tổng số xe.

              + Đề tài của bạn sẽ bao gồm: Định thời, Giao tiếp PC, Ngắt, quét LED, xuất port.

              Với những yêu cầu như trên thì đề tài của bạn không khó, có điều hơi nhiều so với người mới bắt đầu làm điện.
              Nếu bạn là người đã có giải thuật lập trình thì sẽ sớm hoàn tất đề tài thôi vì tách riêng từng phần thì đều đã có trên diễn đàn, bạn chỉ tổng hợp lại thôi.

              Tôi thấy đề tài của bạn rất hay, tiếc là tôi ko có thời gian để hỗ trợ bạn.
              Chúc bạn sớm hoàn tất!
              Biết thì nói là biết,
              Không biết thì nói là không biết,
              ..

              Comment

              • haoth2
                Nhập môn đệ tử
                • Nov 2006
                • 5

                #8
                Cám ơn rất nhiều. Qua nhiều lần trao đổi với các anh, em đã hiểu ra được nhiều điều. Hiện tại em đã setup thành công chương trình viết bằng C, nhưng chỉ ở giai đoạn 1, chưa mô phỏng được xe cộ! Nếu làm được chuyện đó nữa thì điểm 10 là cái chắc, he he! Còn về cái mạch thì em đã biết lắp như thế nào rùi, không quá khó như em nghĩ. Hú hồn. Xin chân thành cảm ơn các anh, em nghĩ vấn đề này nên kết thúc tại đây!

                Comment

                • tranngocduoc
                  Nhập môn đệ tử
                  • Oct 2007
                  • 1

                  #9
                  nếu bạn nào cần code của chương trình đèn giao thông thì bạn hãy vào website http://thitranthinhlong.auto.to/ để lấy nhé mình đã chạy rồi.chương trình này chỉ chạy được trên TC 3.0 thôi.chúc các bạn làm bài tốt

                  Comment

                  • saudo
                    Nhập môn đệ tử
                    • Mar 2008
                    • 5

                    #10
                    Em đang làm đề tài mô phỏng đèn tín hiệu giao thông kết nối qua LPT thui, rất nhỏ thui viết chương rình chạy qua hợp ngữ bác nào rành cái này chỉ giáo giùm em một chút. mail cho em tài liệu hay gì gì đó ng_huytoan@yahoo.com

                    Comment

                    • canhhg
                      Nhập môn đệ tử
                      • May 2008
                      • 2

                      #11
                      nếu bạn nào cần code của chương trình đèn giao thông thì bạn hãy vào website http://thitranthinhlong.auto.to/ để lấy nhé mình đã chạy rồi.chương trình này chỉ chạy được trên TC 3.0 thôi.chúc các bạn làm bài tốt
                      ---------------------------------------
                      Huynh co code của chương trình đèn giao thông viết bằng C và mô phỏng bằng Proteus không cho đệ với. email của đệ là canhhg@yahoo.com, cảm ơn huynh nhiều nhiều!

                      Comment

                      • pictd03
                        Nhập môn đệ tử
                        • Apr 2008
                        • 8

                        #12
                        theo mình nghĩ thì vấn đề của bạn không cần phải dùng SCADA để thu thập dữ liệu đâu, vì SCADA chỉ nên dùng cho hệ thống lớn.Việc bạn giả lập tình huống một làn đường it xe còn làn đường kia nhiều xe thì bạn chỉ việc điều chỉnh thời gian cho các đèn thôi.Tình huống của bạn chỉ nên là giả lập tức là giả sử có xảy ra tình trạng như yêu cầu đề bài cho thôi.

                        Comment

                        • pictd03
                          Nhập môn đệ tử
                          • Apr 2008
                          • 8

                          #13
                          PIC NGHEO ơi có làm mạch giao thông với 16F877a chưa vậy, kết nối chẳng khác gi f84 phải ko PIC NGHEO
                          chân 13 14 noi thạch anh
                          chân 11, 32 nối vcc
                          chân 12, 31 nối gnd
                          6bit portb nối led
                          phải không PIC NGHEO
                          chỉ giáo giúp nha, thanks

                          Comment

                          • canhhg
                            Nhập môn đệ tử
                            • May 2008
                            • 2

                            #14
                            Vi xử lý - Vi điều khiển

                            Các bác co code của chương trình đèn giao thông viết bằng C và mô phỏng bằng Proteus không cho em với, em mới học nên không biết phải làm như nào mông lung quá mà bài thì sắp phải nộp rồi, cảm ơn các anh nhiều!

                            Comment

                            • ngoc_han1989
                              Nhập môn đệ tử
                              • Nov 2008
                              • 2

                              #15
                              Co ai giup em voi!thay cho em thiet ke mach den giao thong o nga tu vi bang C++ nhung em khong biet.huhu

                              Comment

                              Working...