Thông báo

Collapse
No announcement yet.

làm thế nào để vẽ Đồ thị (X,Y), dữ liệu nhận từ cổng COM, ngôn ngữ Visual Baic 6.0

Collapse
This is a sticky topic.
X
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • #31
    Bạn coi bên ở trang 2 của Thread này nhé ,có Cách Làm ở bên đó ,Mỗi lần có Sự Kiện ONCOME là lw vào mảng và Gọi hàm Vẽ đồ thị là OK thui .Khi nào rảnh ,mình sẽ POST code cho hen
    My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

    Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

    Comment


    • #32
      Mình quên nữa chứ ,ở bên trang số 3 của Thread này ,có các SAMPLE CODE rất hay và đầy đủ ( có thêm 1 Fie PDF chỉ các bước đơn giản tạo Giao diện cho Teechart nữa ). Link ở trang Mediafire.com nên rất dễ Down.
      My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

      Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

      Comment


      • #33
        Chào hoanglongu, bạn có thể gửi code đầy đủ ví dụ với teechart của bạn được k ? mình rất muốn học hỏi ! cám ơn nha !

        Comment


        • #34
          Bạn thechinhcdt à, trước hết bạn phải TÌM hiểu , viết được GIAO DIỆN Visual Basic kết nối với Vi Điều KHiển đã , Truyền và Nhận dữ liệu OK hết rùi ,thì mới vẽ được Đồ Thị. Khi nào bạn làm OK rùi thi mình sẽ POST CODE cho bạn Tham Khảo phần Teechart.
          My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

          Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

          Comment


          • #35
            Anh em nào yêu thích MCU của MOTOROLA ( 68HC05 , 68HC08, 68HC11, 68HC12 ...) thì vào THREAD này (do mình lập ra) để tìm TOOLs, CODE mẫu ,tài liệu ( đầy đủ từ A--> Z luôn) nghen.
            http://dientuvietnam.net/forums/show...7572#post97572

            ( mong bác Admin thông cảm - do em POST không đúng chỗ lắm ,hi hi)
            My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

            Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

            Comment


            • #36
              Measurement Studio 8.0.1 For Visual Basic 2005

              Nguyên văn bởi hoanglongu Xem bài viết
              Bạn ATYLA ơi, cái Istripchart ActiveX Control này cũng vẽ đồ thị OK phải không? Bạn có thể hướng dẫn mọi người về Istripchart ActiveX để vẽ ĐỒ THỊ được không? Mình cũng đang nghiên cứu Teechart mà cũng chưa được thành thạo lắm. Mong sự giúp đợ của bạn, để chung ta biết được sử dụng 1 công cụ vẽ ĐỒ THỊ với VB

              Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
              + Code VB6.0:
              Private Sub Form_Load()
              First_Time = False
              CWGraph.ChartLength = 30000
              CWGraph.Axes(2).SetMinMax -10, 100
              End Sub

              Private Sub TIMERCHART_Timer()
              Dim i As Integer
              Dim Y As Integer
              LPV.Caption = TankPV((CNT + 1) / 2)
              LSV.Caption = TankSV((CNT + 1) / 2)
              LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
              Select Case First_Time
              Case False
              First_Time = True
              CWGraph.Axes(1).Minimum = Now 'set x-axis
              CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
              Case True
              End Select
              If Now >= CWGraph.Axes(1).Maximum Then
              CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
              CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
              End If
              For i = 1 To 10 Step 2
              CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
              CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
              Next i
              'CHO PHEP HIEN THI PLOTS.
              CWGraph.Plots(CNT).Visible = True
              CWGraph.Plots(CNT + 1).Visible = True
              End Sub


              + Code Vb2005:
              Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
              Dim MaxY As Double = 100, MinY As Double = 0
              Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
              Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
              Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
              If FlagCWU = True Then
              ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
              ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
              FlagCWU = False
              End If
              ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
              ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
              ToolStripStatus.Text = "Status: Running..."
              ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
              End Sub

              Last edited by mstudio8x; 08-04-2008, 17:30.
              katllu

              Comment


              • #37
                Nguyên văn bởi mstudio8x Xem bài viết

                Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
                + Code VB6.0:
                Private Sub Form_Load()
                First_Time = False
                CWGraph.ChartLength = 30000
                CWGraph.Axes(2).SetMinMax -10, 100
                End Sub

                Private Sub TIMERCHART_Timer()
                Dim i As Integer
                Dim Y As Integer
                LPV.Caption = TankPV((CNT + 1) / 2)
                LSV.Caption = TankSV((CNT + 1) / 2)
                LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
                Select Case First_Time
                Case False
                First_Time = True
                CWGraph.Axes(1).Minimum = Now 'set x-axis
                CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
                Case True
                End Select
                If Now >= CWGraph.Axes(1).Maximum Then
                CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
                CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
                End If
                For i = 1 To 10 Step 2
                CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
                CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
                Next i
                'CHO PHEP HIEN THI PLOTS.
                CWGraph.Plots(CNT).Visible = True
                CWGraph.Plots(CNT + 1).Visible = True
                End Sub


                + Code Vb2005:
                Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
                Dim MaxY As Double = 100, MinY As Double = 0
                Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
                Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
                Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
                If FlagCWU = True Then
                ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
                ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
                FlagCWU = False
                End If
                ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
                ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
                ToolStripStatus.Text = "Status: Running..."
                ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
                End Sub

                Cái này cũng hay quá hen. Giúp anh em có thêm 1 phương tiện vẽ đồ thị nữa rong VB nữa. Cảm ơn bạn hen
                My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                Comment


                • #38
                  Đồ thị à? GNUplot chiến cho pro ^^
                  Mobile : 0936.228.010
                  Thiết bị cao cấp efapel:Ổ cắm, công tắc, MCCB, trucking...

                  Comment


                  • #39
                    Nguyên văn bởi duongthanh85 Xem bài viết
                    Đồ thị à? GNUplot chiến cho pro ^^
                    Nếu là chương trình GOOD ,thì bạn hãy Giới thiệu 1 cách chi tiết để giới thiệu nghen .Như vậy ,sẽ có nhiều người biết đến ,và áp dụng rộng rãi hơn.
                    My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                    Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                    Comment


                    • #40
                      Nguyên văn bởi mstudio8x Xem bài viết

                      Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
                      + Code VB6.0:
                      Private Sub Form_Load()
                      First_Time = False
                      CWGraph.ChartLength = 30000
                      CWGraph.Axes(2).SetMinMax -10, 100
                      End Sub

                      Private Sub TIMERCHART_Timer()
                      Dim i As Integer
                      Dim Y As Integer
                      LPV.Caption = TankPV((CNT + 1) / 2)
                      LSV.Caption = TankSV((CNT + 1) / 2)
                      LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
                      Select Case First_Time
                      Case False
                      First_Time = True
                      CWGraph.Axes(1).Minimum = Now 'set x-axis
                      CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
                      Case True
                      End Select
                      If Now >= CWGraph.Axes(1).Maximum Then
                      CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
                      CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
                      End If
                      For i = 1 To 10 Step 2
                      CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
                      CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
                      Next i
                      'CHO PHEP HIEN THI PLOTS.
                      CWGraph.Plots(CNT).Visible = True
                      CWGraph.Plots(CNT + 1).Visible = True
                      End Sub


                      + Code Vb2005:
                      Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
                      Dim MaxY As Double = 100, MinY As Double = 0
                      Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
                      Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
                      Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
                      If FlagCWU = True Then
                      ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
                      ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
                      FlagCWU = False
                      End If
                      ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
                      ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
                      ToolStripStatus.Text = "Status: Running..."
                      ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
                      End Sub

                      Anh Lưu ơi giúp em với! Em download PC access về mà chẳng cài được gì cả. PC access v1.0 (Sp1,2,3) đều báo là phiên bản này không cài được trên máy.

                      Comment


                      • #41
                        Nguyên văn bởi hoanglongu Xem bài viết
                        Anh ơi cái này cũng viết bằng VB à?

                        Comment


                        • #42
                          Nguyên văn bởi nodiesun Xem bài viết
                          Anh ơi cái này cũng viết bằng VB à?
                          Cái này dùng Visual Basic + Teechart ( ActiveControl X for VB )

                          Bạn có thể xem cách sử dụng ,File hướng dẫn , mình gởi kèm ở trang 2, trang 3 của Thread này
                          Chúc vui!
                          My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                          Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                          Comment


                          • #43
                            Nguyên văn bởi nodiesun Xem bài viết
                            Anh Lưu ơi giúp em với! Em download PC access về mà chẳng cài được gì cả. PC access v1.0 (Sp1,2,3) đều báo là phiên bản này không cài được trên máy.
                            Bạn nên Hà nội Mình Copy cho 1 bản của Mình.
                            ĐC: 36H22 Tân Mai - Hoàng Mai - Hà Nội
                            katllu

                            Comment


                            • #44
                              Bạn ở Hưng Yên gần Hà nội nên đó Mình Copy cho 1 bản mà dùng dung lượng có mấy chục MB gửi qua E-mail nâu lắm.
                              ĐC: 36H22 Tân Mai - Hoàng Mai - Hà Nội
                              katllu

                              Comment


                              • #45
                                [QUOTE=mstudio8x;101012]Bạn ở Hưng Yên gần Hà nội nên đó Mình Copy cho 1 bản mà dùng dung lượng có mấy chục MB gửi qua E-mail nâu lắm.
                                ĐC: 36H22 Tân Mai - Hoàng Mai - Hà Nội[/QUOTE
                                Anh Lưu ơi em đọc trong phần help của Microwin viết chương trình truyền thông như sau:
                                NETWORK 1 // Main Program
                                LD SM0.1 //On the first scan,
                                MOVB 16#09 SMB30 //Initialize Freeport:
                                // - Select 9600 baud
                                // - Select 8 data bits
                                // - Select no parity
                                MOVB 16#B0 SMB87 //Initialize RCV message control byte:
                                // - RCV enabled
                                // - Detect end of message character
                                // - Detect idle line condition as
                                // as message start condition
                                MOVB 16#0A SMB89 //Set end of message character to hex OA (line feed)

                                MOVW +5 SMW90 //Set idle line timeout to 5 ms.
                                MOVB 100 SMB94 //Set maximum number of characters to 100.
                                ATCH INT_0 23 //Attach interrupt 0 to the receive complete event.
                                ATCH INT_2 9 //Attach interrupt 2 to the transmit complete event.
                                ENI //Enable user interrupts
                                RCV VB100 0 //Enable receive box with buffer at VB100 for port 0



                                NETWORK 1 // Interrupt 0
                                //Receive complete interrupt routine

                                LDB= SMB86 16#20 //If receive status shows receive of end character,
                                MOVB 10 SMB34 //then attach a 10 ms timer
                                ATCH INT_1 10 //to trigger a transmit
                                CRETI //and return.
                                NOT
                                RCV VB100 0 //If the receive completed for any other
                                //reason, then start a new receive.



                                NETWORK 1 // Interrupt 1
                                //10 ms timer interrupt
                                LD SM0.0
                                DTCH 10 //Detach timer interrupt
                                XMT VB100 0 //Transmit message back to user on port 0

                                Em không thấy viết INT_2 và INT_1 có cần thêm lệnh gì nữa không?Dữ liệu nhận được sẽ lưu vào đâu hả anh? Em tưởng dữ liệu nhận được phải lưu vào SMB2 chứ? Giúp em với nhé. Thanks anh! À mà khi nào anh có thời gian để em gặp anh chút!

                                Comment

                                Về tác giả

                                Collapse

                                hoanglongu - Received the Bachelor (honors) and Master (by research) of Engineering in Automatic Control at Faculty of Electrical-Electronics Engineering, Ho Chi Minh City University of Technology (HCMUT), Vietnam, in 2009 and 2011, respectively. - Majors: Automatic Control, Solar/Wind Energy systems, Electrical Machines, Two-wheeled Self-Balancing Robot, Microcontrollers. Tìm hiểu thêm về hoanglongu

                                Bài viết mới nhất

                                Collapse

                                • mèomướp
                                  Trả lời cho Sửa bộ nguồn DC 60V 45A
                                  bởi mèomướp
                                  Dạ hông dám làm thì chắc chắn sẽ mãi ko thể làm được đâu ạ. Nguồn xung dân dụng vài kw giờ rất nhìu ạ, sạc ô tô điện, máy hàn, lò vi sóng, âm ly... tùy chất lượng mà độ phức tạp sẽ khác nhau ạ. Và cái giá phải trả về kinh tế...
                                  hôm nay, 13:11
                                • tuyennhan
                                  Trả lời cho Sửa bộ nguồn DC 60V 45A
                                  bởi tuyennhan
                                  Sửa dạng này thì chuyên còn không dám chắc khộng cháy nổ với linh kiện bán ngoài chợ nói gì khộng chuyên .
                                  hôm nay, 09:25
                                • tuyennhan
                                  Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                                  bởi tuyennhan
                                  Đúng rồi chọn mua theo tai . ca thì phải toàn dải nhạc thì chỉ cao và thấp thé nên loa ca thì nghe nhạc không hay và ngược lại .
                                  Muốn ca và nhạc đều hay thì phải dúng 2 giàn , còn nếu chỉ có 1 thì phải chỉnh sửa lại sao cho ca và nhạc đều được không quá dở ....
                                  hôm nay, 09:10
                                • Ng.Phuong.5
                                  Vấn đề in lỗ khoan ra pdf ở Orcad 9.2
                                  bởi Ng.Phuong.5
                                  Vấn đề cũ: khi in mạch ra pdf và bấm chọn Keep Drill Holes Open, in ra thì pdf trắng đen các lỗ chân linh kiện như nhau. Mặc dù có linh kiện phần Drill là 1mm, có linh kiện thì là 3mm. Cho em hỏi cách sửa phần này ở Orcad 9.2 với ạ.
                                  Mấy con...
                                  Hôm qua, 19:44
                                • viettinh
                                  Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                                  bởi viettinh
                                  Bác nói đúng quá. Cơ mà muốn mua hàng chính hãng, hàng thương hiệu mà tai lại hợp hàng tầu mới khổ chứ.
                                  Đang tính mua cái loa tầu nữa cột đằng sau loa này, Loa sony chỉ để hát nhép thôi, có dc k các bác ...
                                  Hôm qua, 18:12
                                • nguyendinhvan
                                  Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                                  bởi nguyendinhvan
                                  Theo tôi thì khi hpj sản xuất ra cái loa đó, đã có nhiều chuyên gia kỹ thuật hiệu chỉnh, tính toán các phần tử kỹ lưỡng rồi.
                                  Bây giờ tính toán hiệu chỉnh lại cần có đội ngũ tương đương với nhà sản xuất.
                                  Cách đơn giản...
                                  Hôm qua, 00:04
                                • mèomướp
                                  Trả lời cho Sửa bộ nguồn DC 60V 45A
                                  bởi mèomướp
                                  Dạ cháu có ý tốt muốn động viên chú ấy ngâm cứu khoa học thôi ạ. Về phần kiểm tra dao động thì chú ấy chưa biết thì sẽ tìm hiểu được là cần những gì ạ, chắc chắn là khi hướng dẫn phần ấy các cô chú nào đó sẽ lưu ý cần loại sò công suất ra tránh cháy nổ rồi ạ....
                                  08-01-2025, 19:02
                                • tuyennhan
                                  Trả lời cho Sửa bộ nguồn DC 60V 45A
                                  bởi tuyennhan
                                  Chủ thớt hỏi có kiểm tra được dao động mà không cấp nguồn thì rõ trình ở mức nào mà mèo còn xúi ngâm cứu nữa ác vậy ....
                                  08-01-2025, 15:43
                                • tuyennhan
                                  Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                                  bởi tuyennhan
                                  Loa bass đấu trực tiếp không qua phân tần để thành loa toàn dải xem có thoát tiếng khộng , nếu không thoát cần phải sửa lại mạch cs hay âm sắc nếu đủ trình còn nếu thoát ca hay nhưng chưa vừa ý vì bass kém chăc thì đấu lại như cũ và đấu thêm loa mid treble bên ngoài .
                                  08-01-2025, 15:28
                                • mèomướp
                                  Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                                  bởi mèomướp
                                  Dạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
                                  08-01-2025, 11:44
                                Đang tải...
                                X