【发布时间】:2014-09-23 11:39:42
【问题描述】:
我正在从 Arduino 收集数据并通过串行端口在 Visual Basic 上传输。现在我想绘制一个时间与电能的关系图(单位kWh) - 沿 x 轴的时间和沿 y 轴的电能。通常我从 Arduino 获取电流数据。
现在我想学习如何开始绘制图表。我需要一个简单的例子来解释为样本绘制图表。我尝试了一些示例代码。看来他们没有工作。
如何绘制图表时间与从串行读取的电流?一旦 Visual Basic 开始运行,它应该保存数据 w.r.t 系统时间和日期。
当前代码
Imports System
Imports System.IO.Ports
Imports System.ComponentModel
Imports System.Threading
Imports System.Drawing
Public Class Form1
Dim myPort As Array
Dim Distance As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
myPort = IO.Ports.SerialPort.GetPortNames()
PortComboBox.Items.AddRange(myPort)
BaudComboBox.Items.Add(9600)
BaudComboBox.Items.Add(19200)
BaudComboBox.Items.Add(38400)
BaudComboBox.Items.Add(57600)
BaudComboBox.Items.Add(115200)
ConnectButton.Enabled = True
DisconnectButton.Enabled = False
End Sub
Private Sub ConnectButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ConnectButton.Click
SerialPort1.PortName = PortComboBox.Text
SerialPort1.BaudRate = BaudComboBox.Text
SerialPort1.Open()
Timer1.Start()
'lblMessage.Text = PortComboBox.Text & " Connected."
ConnectButton.Enabled = False
DisconnectButton.Enabled = True
End Sub
Private Sub DisconnectButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DisconnectButton.Click
SerialPort1.Close()
DisconnectButton.Enabled = False
ConnectButton.Enabled = True
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Try
SerialPort1.Write("c")
System.Threading.Thread.Sleep(250)
Dim k As Double
Dim distance As String = SerialPort1.ReadLine()
k = CDbl(distance)
ListBoxSensor.Text = k
Catch ex As Exception
End Try
End Sub
Private Sub Relay_ON_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Relay_ON.Click
SerialPort1.Write("1")
End Sub
Private Sub Relay_Off_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Relay_Off.Click
SerialPort1.Write("0")
End Sub
End Class
【问题讨论】:
-
你是什么意思...一旦vb开始运行它应该保存数据w.r.t系统时间和日期
-
我想绘制图形时间与串行数据的关系。当我说加载图表或显示图表时,它需要系统时间和串行监视器中的数据并绘制它。
-
我的问题是如何绘制折线图??
-
当您向某人讲话时,请使用他/她的 @username 来通知您。我给你举个简单的例子。
标签: vb.net graph arduino sampling