Сигнал с индуктивного датчика оборотов(проблема c уровнями)

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Аватара пользователя
Alexey1969
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Чт мар 05, 2009 05:31:16
Откуда: г. Кемерово
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Alexey1969 »

ARV писал(а):Alexey1969 писал(а):
Смотрим схему порта
покажите
Там картинка приложена в сообщении.
ARV писал(а):Alexey1969 писал(а):
Максимум что получится, это сжечь порт
это да, но вряд ли это максимум. в максимуме сгорит и МК целиком
Дальше затвора входного полевика не уйдет, проверено :)
ARV писал(а):Alexey1969 писал(а):
Допустимый втекающий 20 мА
вы путаете втекающий ток порта и ток "защитного" диода на пине. у этого диода 1 мА - это предел.
И куда же он втекает, как не на эти защитные диоды ? Уж не в затвор ли входного транзистора ? 20 мА

Я понимаю, о чем вы говорите, имеется ввиду втекающий ток при работе пина как выход.
Но защитные диоды стоят на входе при любом режиме работы пина.
Теперь представим ситуацию, что выход перевели в Z состояние. Куда будет втекать ток ?
Документация указывает только одну величину предельного втекающего тока для любых режимов работы.
Поэтому, не очень понял откуда взялся ток диода в 1 ма.
Реклама
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение BlackKilkennyCat »

Использовать какие-то экстремальные варианты - это в любом случае не хорошо.
Уход дальше затвора - сплошь и рядом. Перепроверьте.
Z -состояние есть не у всех. Выход в режиме входа не является аналогом Z
Меня здесь больше нет
Реклама
Аватара пользователя
Alexey1969
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Чт мар 05, 2009 05:31:16
Откуда: г. Кемерово
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Alexey1969 »

Не вижу экстима. Подобные решения есть в примерах производителя. Одобрены.

Что касается остального, ухода и Z состояний, я оперирую только теми контроллерами, которые знаю. За другие не ручаюсь :)
BlackKilkennyCat писал(а):Выход в режиме входа не является аналогом Z

Не является. Речь была о токе защитных диодов и втекающем токе.
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение BlackKilkennyCat »

Примеры производителей, в последнее время, к сожалению, могут быть нехорошими, если не сказать хуже.
На мой взгляд, использовать защитный функционал как рабочий - это неверное решение.
Не помню кто, (ST, TI или Microchip) рекомендовали в ответственных приложениях не рассчитывать на встроенные ни защиту, ни даже подтягивающие резисторы. Лепить их внешне.
Меня здесь больше нет
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Alexey1969
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Чт мар 05, 2009 05:31:16
Откуда: г. Кемерово
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Alexey1969 »

Если не производителю, то кому верить ?! :)
Тут вполне штатная работа.
Для ответственных, там да, избыточность закладывается.
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ARV »

Alexey1969 писал(а):Там картинка приложена в сообщении
это не схема, а фигня. Так называемый "защитный" диод на самом деле является просто паразитным элементом полупроводниковой структуры, и какими-либо реальными нормируемыми "свойствами" не обладает
Alexey1969 писал(а):Дальше затвора входного полевика не уйдет
хотя фактов, опровергающих это утверждение, в моём распоряжении нет, но даже 1000 повторений одного и того же не исключает вероятности иного развития событий. поэтому утверждть, что никогда дальше затвора не пройдёт, я бы не стал
Alexey1969 писал(а):Я понимаю, о чем вы говорите, имеется ввиду втекающий ток при работе пина как выход.
Но защитные диоды стоят на входе при любом режиме работы пина.
Теперь представим ситуацию, что выход перевели в Z состояние. Куда будет втекать ток ?
Документация указывает только одну величину предельного втекающего тока для любых режимов работы.
Поэтому, не очень понял откуда взялся ток диода в 1 ма.
это не защитные диоды по сути, как я уже ранее писал. открытый push-pull-порт имеет намного меньшее сопротивление, нежели этот самый диод в прямом направлении, поэтому весь втекающий ток проходит в обход диода. это очевидно.
в Z-состоянии - разумеется, все потечет именно через диод. если потечет больше, чем допустимо для конкретной структуры кристалла, порт может защелкнуться, ток станет неконтролируемо большим, разогреет кристалл, и наступит кирдык. чаще всего - кирдык порту, но, как я уже говорил, не исключена вероятность и полного кирдыка...

что касается тока в 1 мА, то мне известно одно упоминание об этом значении в апноуте атемела, посвященном детектору перехода сетевого напряжения через ноль, цитирую:
Изображение
подобным детектором пользовался многократно
Вложения
screenshot-ww1.microchip.com-2020.06.10-09_49_59.png
(19.93 КБ) 890 скачиваний
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Реклама
Аватара пользователя
Alexey1969
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Чт мар 05, 2009 05:31:16
Откуда: г. Кемерово
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Alexey1969 »

ARV писал(а):Alexey1969 писал(а):
Там картинка приложена в сообщении
это не схема, а фигня. Так называемый "защитный" диод на самом деле является просто паразитным элементом полупроводниковой структуры, и какими-либо реальными нормируемыми "свойствами" не обладает
Кусок документации производителя, возможно фигня... :)
Паразитный элемент или реальный, я бы не стал рассуждать, не имея технологической документации производителя.
ARV писал(а):Alexey1969 писал(а):
Дальше затвора входного полевика не уйдет
хотя фактов, опровергающих это утверждение, в моём распоряжении нет, но даже 1000 повторений одного и того же не исключает вероятности иного развития событий. поэтому утверждть, что никогда дальше затвора не пройдёт, я бы не стал
Нет фактов, следовательно, это вопрос верований. У меня тоже нет, поэтому обсуждать бессмысленно.

ARV писал(а):это не защитные диоды по сути, как я уже ранее писал. открытый push-pull-порт имеет намного меньшее сопротивление, нежели этот самый диод в прямом направлении, поэтому весь втекающий ток проходит в обход диода. это очевидно.
в Z-состоянии - разумеется, все потечет именно через диод. если потечет больше, чем допустимо для конкретной структуры кристалла, порт может защелкнуться, ток станет неконтролируемо большим, разогреет кристалл, и наступит кирдык. чаще всего - кирдык порту, но, как я уже говорил, не исключена вероятность и полного кирдыка...
То есть, если я переведу порт в Z состояние, когда в него втекает 20мА, он сгорит ? Я верно понял ?

Что касается рекомендаций атмела, то они касаются детектора перехода через 0 и мы не знаем с чем они связаны.
Поскольку в тексте, кроме тока указанны и предельные напряжения, то рискну предположить, что это связанно с допустимой тепловой мощностью рассеивания все тех же защитных диодов.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ARV »

Alexey1969 писал(а):То есть, если я переведу порт в Z состояние, когда в него втекает 20мА, он сгорит ? Я верно понял ?
не верно.
чтобы в Z-состоянии втекало 20 мА, при питании 5В МК вам придется приложить к пину, предположим, 5,7В - и тогда, скорее всего, он сгорит. во всяком случае, может сгореть.
Alexey1969 писал(а):Кусок документации производителя, возможно фигня
функциональное устройство порта не является его принципиальной схемой - это лишь пояснение принципа функционирования, поэтому апелляция к этой "схеме", как к чему-то "обязывающему", некорректна.
Alexey1969 писал(а):мы не знаем с чем они связаны
это не важно, с чем связаны. главное - рекомендовано не превышать это значение, а уж разработчикам виднее, почему.

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

разумеется, я не запрещаю вам подавать без резистора на пин микроконтроллера даже 1000 вольт. возможно, у вас только один затвор и пробъётся, а остальное уцелеет... но я не рекомендую так делать, и аргументы привел. следовать этим советам или нет - свободный выбор каждого. как и спорить с очевидными мерами повышения надежности схем путем следования рекомендациям производителя.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение BlackKilkennyCat »

при Z наличие 20 мА как-то немного странно, не?
Меня здесь больше нет
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ARV »

BlackKilkennyCat писал(а):при Z наличие 20 мА как-то немного странно
если к пину приложено напряжение выше питающего, отпираются паразитные pn-структуры (те самые "защитные" диоды) и ток течет, как миленький, не взирая на Z
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение BlackKilkennyCat »

согласно той же документации, например, на STM8S005:
Input voltage on any other pin(2) VSS - 0.3 VDD + 0.3
2. IINJ(PIN) must never be exceeded.
This is implicitly insured if VIN maximum is respected. If VIN maximum cannot be respected, the injection current must be limited externally to the IINJ(PIN) value.

Так что, весь спор сводится как всегда, к бесполезной попытке убедить, что светодиодики на лпт-порт напрямую вешать нельзя...
Меня здесь больше нет
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ARV »

BlackKilkennyCat писал(а):светодиодики на лпт-порт напрямую вешать нельзя...
вообще-то, разговор принципиально о другом... даже удивительно, как вы смогли привести нужную цитату и подвести итог совсем из другой оперы...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение BlackKilkennyCat »

к тому, что использование каких-то запредельных режимов, вопреки спецификациям, потому что работает - не есть хорошо.
Меня здесь больше нет
ferio
Прорезались зубы
Сообщения: 204
Зарегистрирован: Вт мар 31, 2009 09:14:47

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ferio »

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

Вот скрин.
СпойлерИзображение


А может не хватает размаха по амплитуде? хотя Микроконтроллеру 2.5В должно вполне достаточно.
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Ivanoff-iv »

[uquote="ferio",url="/forum/viewtopic.php?p=3853576#p3853576"]Схемку собрал...[/uquote]какую из?
показания могут скакать вовсе не из-за амплитуды (0 и 1 нужно обеспечивать не на грани, это и так понятно...)
как вычисляется частота? (каков алгоритм?)
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
ferio
Прорезались зубы
Сообщения: 204
Зарегистрирован: Вт мар 31, 2009 09:14:47

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ferio »

Ivanoff-iv, схема :
Изображение


Частота измеряется с помощью ардуино. И его pulseIn
Спойлер

Код: Выделить всё

int Htime;       // целочисленная переменная для хранения времени высокого логического уровня
int Ltime;       // целочисленная переменная для хранения времени низкого логического уровня
int Ttime;     // переменная для хранения общей длительности периода
int frequency_in_raw; // переменная для хранения частоты входной
int frequency_in_avg; // переменная для хранения частоты входной
int frequency_in_avg_rez; // переменная для хранения частоты входной
int frequency_out; // переменная для хранения частоты
int i=0;
#include "GyverTimers.h"


void setup()
{
  // устанавливаем скорость передачи данных последовательного соединения.
  Serial.begin(9600);
  pinMode(2,INPUT);
  pinMode(9, OUTPUT);
}

void loop()
{
  for(i=0;i<3;i++)
    {
  Htime=pulseIn(2,HIGH,100000);    // прочитать время высокого логического уровня
  Ltime=pulseIn(2,LOW,100000);     // прочитать время низкого логического уровня
  Ttime = Htime+Ltime;
  frequency_in_raw=1000000/Ttime;  // получение частоты из Ttime в микросекундах
  frequency_in_avg+=frequency_in_raw;
  Serial.println(frequency_in_raw);
    }
  
    frequency_in_avg_rez= frequency_in_avg/3;
    frequency_in_avg=0;
 Serial.println(frequency_in_avg_rez);
 Serial.println(' ');
    i=0;
  

frequency_out=frequency_in_avg_rez/3; //коэффициент корреляции

Serial.println(frequency_out);
 Serial.println('.');
// delay(5);
if(5>frequency_out>1000)
{
   digitalWrite(9, LOW);
  }


if(5<frequency_out<1000)
  {
  Timer1.setFrequency(frequency_out*2);                 // настроить частоту таймера в Гц
  Timer1.outputEnable(CHANNEL_A, TOGGLE_PIN);   // в момент срабатывания таймера пин будет переключаться
  }


  
    /*if (frequency_in_avg_rez<35)
    {
    noTone(8);
    }
    if (35<frequency_in_avg_rez)
    {
   tone(8, frequency_out);
    }*/

}
Аватара пользователя
anatol378
Мудрый кот
Сообщения: 1833
Зарегистрирован: Вс окт 04, 2009 13:23:12
Откуда: н. новгород

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение anatol378 »

[uquote="ferio",url="/forum/viewtopic.php?p=3853576#p3853576"]...

А может не хватает размаха по амплитуде? хотя Микроконтроллеру 2.5В должно вполне достаточно.[/uquote]
Так у вас амплитуда относительно земли чуть больше одного вольта. См левый нижний угол осцилограммы.
Лучше умному тупить, чем тупому умничать
ferio
Прорезались зубы
Сообщения: 204
Зарегистрирован: Вт мар 31, 2009 09:14:47

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ferio »

anatol378, но ведь логический ноль это 0.1vcc.? Как выйти из ситуации?
Аватара пользователя
Ivanoff-iv
Друг Кота
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение Ivanoff-iv »

осцилл в режиме АС настроен и по нему не определить уровни...
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
ferio
Прорезались зубы
Сообщения: 204
Зарегистрирован: Вт мар 31, 2009 09:14:47

Re: Сигнал с индуктивного датчика оборотов(проблема c уровня

Сообщение ferio »

Ivanoff-iv, oк, сейчас сниму в режиме дс.
Ответить

Вернуться в «Умные мысли»