Simulink TCP / IP связь с Raspberry PI - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь отправить данные из симуляции Simulink в Raspberry Pi в той же сети и записать данные в формате CSV. Я использую следующий python код для чтения данных и записи их в файл CSV.

import csv
import socket

TCP_IP = '192.168.1.8'
TCP_PORT = 47899
BUFFER_SIZE = 20

s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((TCP_IP, TCP_PORT))
s.listen(4)

data_rcv=''
conn, addr = s.accept()

with open('mycsv.csv','w') as csvfile:
#        csvfile.write(u'\ufeff'.encode('utf8'))
        writer = csv.writer(csvfile)
        writer.writerow(["Value"])

print 'Connection address:',addr
while 1:
    data = conn.recv(BUFFER_SIZE)
    if not data: break
    data_rcv += data

with open('mycsv.csv','a') as csvfile:
#        csvfile.read(u'\ufeff'.encode('utf8'))
        reader = csv.writer(csvfile)
        reader.writerow(data_rcv)

conn.close()

Это мое простое симуляционное моделирование для проверки соединения .. enter image description here

Связь в порядке и работает. Каждый раз, когда я запускаю симуляцию, в моем CSV-файле записываются случайные китайские иероглифы вместо цифр, которые я на самом деле отправлял. Как я могу изменить формат данных, чтобы он действительно читался? И как я могу настроить свою программу для непрерывного чтения и записи смоделированных данных в реальном времени в файл CSV ??

...