Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
通信データのグラフ化
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30409#CommentId83554
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
素人
 (学生)
投稿日時
2019/6/12 11:34:32
Timerイベントのコードを追加します。
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Dim ModbusClient As EasyModbus.ModbusClient = New EasyModbus.ModbusClient(TextBox1.Text, 502)
Registers = ModbusClient.ReadHoldingRegisters(0, 3)
Label1.Text = Registers(0)
Label2.Text = Registers(1)
Label3.Text = Registers(2)
xdata = Registers(0)
Chart1.Series("受信データ").Points.AddXY(time, xdata)
'Saveコード
Dim sw As System.IO.StreamWriter
sw = New System.IO.StreamWriter("rdata.csv", True,
System.Text.Encoding.GetEncoding(932))
sw.WriteLine(xdata & "," & time)
sw.Close()
'秒表記
time += CDbl(TextBox2.Text) / 1000
'残りデータ数の表示
CountData -= 1
If CountData < 0 Then
timeLabel.Text = "測定終了"
Else
timeLabel.Text = "残り" & Format(CountData, "#") & "個"
End If
If CountData < 0 Then
If CheckBox1.Checked Then
''繰り返したい場合は、True
time = 0
'*1000は、msecのため秒表記へ変更
CountData = CDbl(maxX / (CDbl(TextBox2.Text) / 1000))
System.Threading.Thread.Sleep(300)
Chart1.Series(0).Points.Clear()
Else
Timer1.Enabled = False
MessageBox.Show("測定終了")
End If
End If
End Sub