Вывод графика амперметра на ПК

adv_j
Offline
Зарегистрирован: 09.07.2020

Вопрос в выводе графика с амперметра ACS712 на экран компьютера. Использую совместно с 5-амперной версией датчика контроллер Nano. Для этого использую SFMonitor и функцию analogRead. Не могу разобраться с выводом через эту программу - всякую ерунду рисует. С ардуино работаю в первый раз, нужна помощь. Для вывода через монитор порта в программе от ардуино печатает верные значения.

Morroc
Offline
Зарегистрирован: 24.10.2016

Казалось бы... причем тут arduino. Я вот первый раз название программы вижу.
Вы хотя бы выложите что вы на пк получаете от ардуины, если это не текст, то побайтно.

adv_j
Offline
Зарегистрирован: 09.07.2020

Задача - вывести график тока на комп. Для начала постоянный ток, и не особо точный датчик. Потом ток будет переменный и датчик более точный поищу. Как вывести побайтно, если на экране наблюдаю график? Может есть ещё какие программы для отображения графиков? http://www.poprobot.ru/soft/sfmonitor вот о программе SFMonitor

sadman41
Offline
Зарегистрирован: 19.10.2016

Где скетч, который "правильно печатает значения“?

adv_j
Offline
Зарегистрирован: 09.07.2020
#include <TroykaCurrent.h>
#define PIN_OUT A0
#include <TroykaCurrent.h>
ACS712 datal(PIN_OUT);
void setup() {
  Serial.begin(115200);
 
}
 
void loop() {
  Serial.print("Current is" );
  Serial.print(datal.readCurrentAC());
  Serial.print(" A" );
  Serial.println(" " );
  delay(0.001);
 
}
b707
Offline
Зарегистрирован: 26.05.2017

adv_j пишет:

Как вывести побайтно, если на экране наблюдаю график? Может есть ещё какие программы для отображения графиков?

Попробуйте изъяснятся точнее. Вам что вообще нужно - график или значения "побайтно" ?

adv_j
Offline
Зарегистрирован: 09.07.2020

Мне график нужен. Побайтно sadman41 просил

b707
Offline
Зарегистрирован: 26.05.2017

adv_j - во-первых, вставьте код по правилам форума. Это обязательно, иначе можете не продолжать

во-вторых - а где в этом коде analogRead() ?

b707
Offline
Зарегистрирован: 26.05.2017

adv_j пишет:

Мне график нужен. Побайтно sadman41 просил

вы заговариваетесь? - Насколько вижу, Садман ничего не просил. "побайтно" это цитата из вашего сообщения 2

adv_j
Offline
Зарегистрирован: 09.07.2020

Morroc пишет:
Казалось бы... причем тут arduino. Я вот первый раз название программы вижу. Вы хотя бы выложите что вы на пк получаете от ардуины, если это не текст, то побайтно.

b707
Offline
Зарегистрирован: 26.05.2017

adv_j пишет:

Morroc пишет:
Казалось бы... причем тут arduino. Я вот первый раз название программы вижу. Вы хотя бы выложите что вы на пк получаете от ардуины, если это не текст, то побайтно.

ок, не увидел.

 

adv_j
Offline
Зарегистрирован: 09.07.2020
#include <TroykaCurrent.h>
#define PIN_OUT A0
#include <TroykaCurrent.h>
ACS712 datal(PIN_OUT);
void setup() {
  Serial.begin(115200);

}

void loop() {
  Serial.print("Current is" );
  Serial.print(datal.readCurrentAC());
  Serial.print(" A" );
  Serial.println(" " );
  delay(0.001);

}

 

b707
Offline
Зарегистрирован: 26.05.2017

спасибо за выложенный код

Вопросы:

Этот код используется для отправки данных на ПК, когда вы строите график?   Где в этом коде analogRead() ?

Замечание (к сути проблемы отношения не имеет) - в строке 15 написана чушь, параметр delay() может быть только целым

 

adv_j
Offline
Зарегистрирован: 09.07.2020
#include <TroykaCurrent.h>
#define PIN_OUT A0
#include <TroykaCurrent.h>
ACS712 datal(PIN_OUT);
const int adc1Pin = A0;
int val = 0;
 
void setup(){
    Serial.begin(115200);
    pinMode(adc1Pin, INPUT);
}
 
void loop(){
    val = analogRead(adc1Pin);
    val = map(val, 0, 1023, 0, 255);
    Serial.write(val);
    delay(20);
}

 

adv_j
Offline
Зарегистрирован: 09.07.2020

тот использовался для вывода через монитор порта. Его sadman41 просил. график строит этот

b707
Offline
Зарегистрирован: 26.05.2017

А вас не смущает, что в коде из сообщения 11 вы читаете значение с даьчика специальной функцией readCurrentAC(), а в последнем коде - обычным analogRead() ?

sadman41
Offline
Зарегистрирован: 19.10.2016

http://www.poprobot.ru/soft/sfmonitor

------------
В режиме "Простой", монитор принимает поток одно-байтовых величин. При этом, из полученного каждый момент пачки байт отбирается только последний. В связи с этим, следует внимательно отнестись к скорости передачи данных.
------------

Теперь ответьте себе - каков размер (в байтах) переменной типа int?