Перейти к содержанию
    

anton2

Новичок
  • Постов

    5
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. Ладно, сам решил в итоге. Надо было сделать систему из трех уравнений с разными входами и выходами и решить ее.
  2. Хорошо, я записал, допустим, готовую формулу, которая получается из прикрепленной фотографии. И снял точки по алгоритму. Её можно представить в другом виде для моего примера, где всё равно нулю, кроме OFFSET0, S0, KS. Тогда итоговая формула выглядит так (Кстати, температуры у нас нет, поэтому TDATA и T0 = 0): Pnl = (PDATAcal1 - OFFSET0) * S0; PDATAcal2 = Pnl + KS*Pnl*Pnl; Где PDATAcal1 --грубо говоря входные неоткалиброванные данные, а PDATAcal2 -- уже откалиброванные (и то и то известно). И того получается у нас уравнение с тремя неизвестными. Как в данном уравнении найти каждый коэффициенты калибровки? Про это нет ответа в документации. ОТРЕДАКТИРОВАНО1: S0, OFFSET0, KS и есть коэффициенты калибровки. Но я не понимаю, как их находить. Количество их комбинаций может идти в бесконечность.
  3. Здравствуйте, прикрепил файл своего датчика и его калибровки. Хочу знать, как рассчитываются калибровочные коэффициенты. Я знаю, что они рассчитываются из тех уравнений, что представлены в файле. Я уже настроил ток, настроил регистры, но проблема в том, что я не понимаю как надо считать коэффициенты. Допустим, для режима работы №3, надо вычислить OFFSET0, S0, KS. КАК? Это же получается уравнение с тремя неизвестными, мне методом перебора это решать? По типу: пусть S0 = 2, KS = 1, тогда OFFSET0 = x, где потом в конце мы этот x находим. Или же это решается по-другому? NSA2860_9260 Calibration Algorithm Introduction_RevD.pdf
  4. Короче говоря, я исправил код, но он по-прежнему не работает. Теперь он выглядит так. Вот, что показывается стэке. Это странно. Какое значение бы я ни ввел, все равно будет c8 и 02. С чем это может быть связано?
  5. Здравствуйте, вот даташит драйвера микросхемы: https://www.compel.ru/item-pdf/2ca117b3fb3721979994a935337fcc2d/pn/novosens~nsa2860x-dqnr.pdf . На странице 33 представлено, как пользоваться i2c для данной схемы. Если нужно (подозреваю, что нет), то вот даташиты микроконтроллера, который подключен к микросхеме: https://www.st.com/resource/en/reference_manual/CD00171190-.pdf и https://www.st.com/resource/en/datasheet/stm32f103c8.pdf . Вот начальные условия: выходы микроконтроллера (pb6 и pb7) подключены к микросхеме. Необходимо отправить сигнал и получить его. С помощью библиотеки HAL я настроил его, но возникли проблемы: сигнал скорее всего не отправляется и не читается соответственно. Фрагмент кода представлен ниже: 0x6D адрес ведомого, EEPR_REG_SPARE1 адрес регистра (0xcf). Кроме этого я пытаюсь отправить весь массив, а в итоге отправляется только нулевой элемент и всё. Считывается тоже только нулевой элемент. Что я делаю не так?
×
×
  • Создать...