С одной стороны китайский, с другой - чем измеряли?
У большинства тестеров диапазон 200 мВ в нижних 5-10% значений диапазона - так себе. Нелинейности АЦП на краях диапазонов это скорее правило, чем исключение, в них стараются не работать.
Если сигнал усилить через что-то прецизионное, типа ОР-07, например, а потом измерить, результат должен быть более точным, но не точнее, чем допуск резисторов тракта усиления.
VICTOR VC9808+ Если он врет, то и я вру.
2-2-1. Постоянное напряжение
Предел измерения Разрешение Точность
200 мВ 0,1 мВ ±(0,5%+3)
Хороший прибор!
Значит возвращаемся к варианту - китайский
А зачем точней? Ёмкость затвора и сопротивление канала оригиналов и подделок отличаются в разы, а не на проценты.
Все-таки чаще идет не прямая подделка, которая требует определенных собственных затрат, а просто разбраковка, которая по сути ничего не требует, кроме как в “кармане” на али унести. Случай от Петра скорее из этой оперы.
АААА, еще перемаркер забыл, как вариант.
Перемаркер это и есть подделка)
Подделывать буквально в подвале невозможно, конечно же.
В общем , все висло на тестовых сопельках - вечером посадил но хорошие толстые провода, пропаял всё… в итоге на выходе 11.5В - думаю тему можно закрывать
Что заработало - хорошо, хотя так-то это чисто партизанщина.
На будущее или для замены можно взять что-то такое
Ну, попервой я себе заказал вот…
# Модуль MOSFET ключа AOD4184 5-36В 15А 400Вт KZY4807M
и что?
с параметрами модуля что-то напахано, там впору писать 150А, а не 15
или транзисторы поставлены хз что.
вот и проверим ))))
там в плате 100 Ом по входу, как у тебя было в первый раз на 3205, + 2 затвора имеют емкость больше чем у 3205. т.е. на вход надо последовательно добавить резистор 100 - 200 Ом, и может быть выключить один из транзисторов, они там параллельно стоят. тока там и у одного достаточно, если не наврали.
к стати, в предыдущую свою поделку я всё же вставил 200 Ом. Принял к сведеию, спс.
Мужики, выручайте, ну снова фигня какая-то…
Пид регулятор отрабатывал нормально…
А на следующий день странно как то себя вся схема ведет… открывается мосфет сразу до 9В из 12в.
Пробовал вручную прописывать открытие и 10, и 20, и 50 из 255, он сразу на 9 вольт с копейками.
попробовал другой мосфет, та же фигня, купил новую ардуинку и плату расширения к ней… не помогает…
Помогите решить проблему!!!
Надо таймер ставить. Хз зачем, но вдруг поможет.
Не бывает такого. Вспоминай)
уже все лишнее из кода выкинул
#define CS_PIN 11 // cs
#define DATA_PIN 12 // sd
#define CLK_PIN 13 // sck
GyverMAX6675 <CLK_PIN, DATA_PIN, CS_PIN> sensor;
LiquidCrystal_I2C lcd(0x27, 20, 4);
GyverPID pid;
//uint32_t timer = 0;
float Temp = 0; // текущая температура
float SetTemp = 40; // Установленая температура
uint32_t TempCanDrive = 195;//215; // Температура начала старта вращения
bool TempUp;
bool TempDown;
bool OnOff; //= HIGH;
bool Rotate;
bool CanDrive; // разрешено наматывать
String STATUS;
float MOSFET;
void setup() {
pid.Kp = 3.0;
pid.Ki = 3.0;
pid.Kd = 1.0;
//pid.setDt(500);
pid.setDirection(NORMAL); //REVERSE
pid.setpoint = SetTemp;
lcd.init(); // initialize the lcd
lcd.backlight();
lcd.setCursor(0,0);
pinMode(Temp, INPUT);
}
//---------------------------------------------
void loop() {
pidCountrol();
}
void pidCountrol(){
static uint32_t tmr;
if (millis()-tmr >500){
tmr = millis();
if (sensor.readTemp()){
Temp = sensor.getTemp();
pid.input = Temp;
pid.getResult();
MOSFET = pid.output;
analogWrite(MOS, MOSFET);
}
lcd.setCursor(2, 3);
lcd.print("CanDrive: "+String(CanDrive)+" ("+String(TempCanDrive)+")");
lcd.setCursor(0, 1);
lcd.print("Mosfet: " + String(MOSFET));
lcd.setCursor(0, 0);
lcd.print("Temp:"+String(Temp) + " ("+String(SetTemp)+")");
}
}```
pid.setDirection(NORMAL); //REVERSE
Мир таков, да. Чёрное это белое, белое это чёрное.
Не уверен, но разве analogWrite может принимать тип float? Это какая-то дичь! Знающие ща уточнят.
Опять же нахера ПИД исполняется раз в полсекунды, а вывод на дисплей дрочится до посинения?
Пробовал int…
Да пофиг уже скорость вывода, это я просто код урезал, у меня в промежутках там еще и управление движком было…
мне щас важно мосфет настроить!!!
Пробовал AnalogWrite(MOS, x), где x- разные значения:0,10,100 и т.д.?
да
void loop() {
//pidCountrol();
for (int i=0;255;i++){
analogWrite(MOS, i);
lcd.setCursor(0, 1);
lcd.print("Mosfet: " + String(i));
delay(500);
}
}