• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Ногодрыг на rtl

kab

New member
@=AK=
очень упрощенно Аналоговый компьютер — Википедия
В том виде, котором читали мне - адова смесь прецизионной электроники с электротехникой.
Как это ни странно, с помощью пары деревянных реек можно довольно шустро перемножать числа. И не только...

Называлось это - логарифмическая линейка.
 

=AK=

New member
В том виде, котором читали мне - адова смесь прецизионной электроники с электротехникой.
А, это... Проходил, даже лабы делал когда-то. Только к аналоговым датчикам они относятся довольно фиолетово. А термисторы мерять - вообще чистое удовольствие: ratiometric measurement. Опорой является не прецизионный источник напряжения или тока, а точный резистор. Никаких усилителей, все источники погрешностей сведены к нулю, на результат только сопротивление проводов влияет.
 

АндрейМ

New member
Только к аналоговым датчикам они относятся довольно фиолетово.
Это когда нет вообще никаких требований. Электрические АВМ (это я для kab), сдохли от того, что требования к элементной базе и конструкции запредельные
 

kab

New member
Это когда нет вообще никаких требований. Электрические АВМ (это я для kab), сдохли от того, что требования к элементной базе и конструкции запредельные
Да ничего там запредельного - совершенно:
- подключаешь емкость параллельно нагрузке - вот тебе интеграл. Подключаешь последовательно - дифференциал. На современных ЦЭВМ (обратить внимание на "Ц") численными методами умучаетесь решать дифуравнения высших порядков, которые на АВМ решаются за секунды. А вообще, каждый инструмент хорош к месту и ко времени...

ЗЫ.@АндрейМ - я не пытаюсь дискутировать. Сказанное выше - :). А общие представление, какие вычислительные устройства, когда и для чего использовались - у меня есть :)
Извините, что не по теме...
 

pvvx

Активный участник сообщества
Еще раз, буквально - в рамках моего использования, ошибка датчика при измерении температуры металлической гильзы, находящейся в паро-жидкостной среде, состоящей из смеси органических и неорганических веществ и их азеотропов, в которой происходят множественные смены фаз, в непрерывном режиме, не превышает шага встроенного в ds18 АЦП. Если производить секвентальное усреднение по нескольким значениям опроса график становится гладким в пределах шага АЦП. Если дочитали до сюда, то предлагаю перечитать название темы и либо начинать писать по делу, либо пройти флудить куда-то в другое место. Спасибо за понимание.
О - по делу :) Скорее всего у ds18 очень большой шум у самой полупроводниковой части где происходит измерение температуры - от этого ровного графика и повторяемости замеров, хоть дифференциальных, в шаг его псевдо-ADC не получить. Полупроводниковые измерители температуры очень шумные и на них влияют другие физические явления. Хорошо подходят для rand() :)

Пробовал менять все биты регистров управления i/o PB_0 на RTL8195A - пока не вышло сделать OK. Там вообще какая-то странность и с подтяжкой PullUp - напряжение выходит в 0.7В при PullUp и установке его в Input, а не к 3.3В. Возможно что-то не то на самом модуле напаяно или я что накосячил или неверно залепил... :) Быстро не вышло разобраться... а времени на это пока нет. По тому и написал - "надо ковыряться". С другими i/o не проверял.
У RTL-00 там впаян св.диод и про это напоминать не надо. И про то, что питание порта B подключено.
Возможно есть управление питанием у GPIO контроллера портом B - этого не проверял.
 
Последнее редактирование:

АндрейМ

New member
ЗЫ.@АндрейМ - я не пытаюсь дискутировать. Сказанное выше - :). А общие представление, какие вычислительные устройства, когда и для чего использовались - у меня есть :)
Надоело обсасывать - я постарался забыть электротехнику и не хочу к ней возвращаться. Стопка листов расчета на пару проводников очень хорошо помогает с таким просветлением :)
О - по делу :) Скорее всего у ds18 очень большой шум у самой полупроводниковой части где происходит измерение температуры - от этого ровного графика и повторяемости замеров, хоть дифференциальных, в шаг его псевдо-ADC не получить. Полупроводниковые измерители температуры очень шумные и на них влияют другие физические явления. Хорошо подходят для rand() :)
:) На графиках встречаются странные колебания, но все списываю на переход фаз в многокомпонентной смеси т.к. эти артефакты достаточно растянуты по времени и не похожи на обычный шум. А графиков я отсмотрел уже часов на 100 точно.
 

pvvx

Активный участник сообщества
На графиках встречаются странные колебания, но все списываю на переход фаз в многокомпонентной смеси т.к. эти артефакты достаточно растянуты по времени и не похожи на обычный шум. А графиков я отсмотрел уже часов на 100 точно.
У нас часто проще - адсорберы железные и внутри помех нет. Тупую цифру по типу 1-wire тянуть не катит - а вдрух рядом умный электро-сварщик на заводе решил что тут ему лучше варить? :)
 

pvvx

Активный участник сообщества
Странная фигня в SDK - вот такой интересный кусок нашелся
RTL00_WEB/serial_api.c at 1e44ff6a55a3b6237faf22b62835570e181261c8 · pvvx/RTL00_WEB · GitHub
А что там интересного?
Менять направление передача-прием объединенных ножек TX-RX можно и путем смены мапинга выходов UART на разные I/O... Но не позволяет TX переключить в OK при самой передаче байта.
 
Последнее редактирование:

АндрейМ

New member
А что там интересного?
Менять направление передача-прием объединенных ножек TX-RX можно и путем смены мапинга выходов UART на разные I/O... Но не позволяет TX переключить в OK при самой передаче байта.
на UART2 заработало без внешней обвязки на стандартном SDK.
 

АндрейМ

New member
Опишите, что вышло, если есть время...
Идея вот отсюда FT232: Как подружить 1-wire с компом / Связь железа с компьютером. / Сообщество EasyElectronics.ru

Код:
#define UART2_TX    PA_4 // UART_2
#define UART2_RX    PA_0

typedef enum owFunc_t{
    OW_CMD_FREE, OW_CMD_IDLE, OW_CMD_RESET,
    OW_CMD_READ_BITS,OW_CMD_WRITE_BITS, OW_CMD_WAIT_CONV
} owFunc_t;

serial_init(&ow_sobj,UART2_TX  ,UART2_RX);
serial_format(&ow_sobj, 8, ParityNone, 1);

//-------------------------
    switch(cmd){
        case OW_CMD_RESET:
            serial_baud(&ow_sobj,9600);
            serial_putc(&ow_sobj,0xF0);
            ow_io_buf[0]=serial_getc(&ow_sobj)!=0xF0?1:0;
            return ow_io_buf[0];
        case OW_CMD_READ_BITS:
            serial_baud(&ow_sobj,115200);
            memset(ow_io_buf,0,sizeof(ow_io_buf));
            ow_bit=0;
            while (ow_bit<ow_bits) {
                serial_putc(&ow_sobj,0xFF);
                int c=serial_getc(&ow_sobj);
                if (c==0xFF) {
                    ow_io_buf[ow_bit>>3]|=1<<(ow_bit&7);
                }
                ow_bit++;
            }
            return 1;
        case OW_CMD_WRITE_BITS:
            serial_baud(&ow_sobj,115200);
               ow_bit=0;
                while (ow_bit<ow_bits) {
                    serial_putc(&ow_sobj,((ow_io_buf[ow_bit>>3]>>(ow_bit&7))&1)?0xFF:00);
                    (void) serial_getc(&ow_sobj);
                    ow_bit++;
                }
                return 1;
            break;
        default:
            return 0;
            break;
    }
На чтении, при "0" датчика - 0xfc. Этот кусок работает с блокирующей процедурой ds_search, как время появится напишу и выложу DMA или IRQ драйвер.
 
Сверху Снизу