ReadLine Последовательного порта по сравнению с ReadExisting или как считать данные с последовательного порта правильно

  • Использование активации сигмоида ограничивает ваш выходной диапазон [0, 1]. Но ваш целевой выход находится в диапазоне [0, 2000], поэтому ваша сеть не может учиться. Попробуйте вместо этого активацию relu.
  • Попробуйте использовать adam вместо rmsprop при отладке, он почти всегда работает лучше.
  • Тренируйся дольше.

Собрав все вместе, я получаю следующий вывод:

Epoch 860/1000
1000/1000 [==============================] - 0s 29us/step - loss: 5.1868e-08
14
задан sarsnake 12 March 2009 в 17:03
поделиться

2 ответа

У меня никогда не было удачи с работой ReadLine. Просто сделайте Чтение в локальный буфер каждый раз, когда данные доступны, и затем используйте отдельный поток, чтобы просканировать данные и найти разрывы строки сами.

5
ответ дан 1 December 2019 в 13:48
поделиться

Зависит от того, что символ (символы) конца строки (EOL) для Ваших входных данных. Если Ваши данные являются строкой, ориентированной затем, ReadLine является допустимой функцией для использования, но Вы можете хотеть посмотреть на свойство NewLine и уверены, что это установлено соответственно для Ваших входных данных.

Например, если Ваш выходной перевод строки масштаба для EOL затем установлен port.NewLine = "\n";

http://msdn.microsoft.com/en-us/library/system.io.ports.serialport.newline.aspx

11
ответ дан 1 December 2019 в 13:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: