AlanSbor 0 September 12, 2021 Posted September 12, 2021 · Report post Добрый вечер ! Планирую сделать подобие этого планшета, только попроще. 1. Как распределить оптимально датчики что бы можно было за магнитом закрепленном на карандаше отслеживать написанное ? 2. Как отслеживать положение кольцевого магнита в пространстве кучи магнитных датчиков, если я правильно понимаю, там будет сыпаться куча данных от всех датчиков по трем осям и как выбрать данные которые точно покажут где карандаш пишет ? Расстояние от магнита до поверхности платы 40 мм, размер печатной платы чуть больше А4 (210*297мм) ? Прошу сильно не пинать. Алексей. Quote Share this post Link to post Share on other sites More sharing options...
_pv 21 September 12, 2021 Posted September 12, 2021 · Report post 1) чем плотнее - тем лучше. а оптимально по какому критерию? 2) надо всего лишь посчитать поле от магнита в пространстве, (причем совсем честно, аналитически для цилиндрического магнита оно, насколько помню, во всём пространстве не очень считается, что-то там всё равно интегрировать придётся численно и как-то аппроксимировать) потом для всех датчиков, чьё положение в пространстве известно, выразить поле магнита B(x,y,z,mx,my,mz) в зависимости от его положения x,y,z и направления mx,my,mz , и наконец, наименьшими квадратами по показаниям датчиков найти положение магнита в пространстве относительно датчиков, которое даст минимальную разницу с посчитанного с измеренным. только вот магнит который можно повесить на "карандаш", чтобы при этом им ещё можно было писать, на расстоянии 40мм хорошо если будет создавать поля в единицы мТл, то есть десятки Гс. это при земном поле в 0.5Гс, и при повороте планшета, или например если его положить на стол у которого под столешницей железная рама, чтобы при этом он не начинал сам по себе рисовать, думаю "попроще" не особо получится. обычно там всё-таки по ВЧ измеряют, в стилусе колебательный контур, который ещё и меняется при нажатии/касании, а в планшете куча дорожек по столбцам/строкам для возбуждения и измерения отклика. Quote Share this post Link to post Share on other sites More sharing options...
rkit 0 September 12, 2021 Posted September 12, 2021 · Report post Для начала нужно взять этот магнит, и посмотреть, что он вообще из себя представляет в плане полярности и силы поля. Quote Share this post Link to post Share on other sites More sharing options...
Hale 1 September 13, 2021 Posted September 13, 2021 · Report post плохая идея делать дигитайзер на магнитных датчиках. поле магнитное замкнуто, значит будут бублики с разворотом поля, значит в зависимости от ориентации поле будет то меньше то больше с неожиданными минимумами, максимумами - фиг скалибруешься. Разворот поля может дать максумум на соседнем датчике, при этом ноль на ближайшем. никакой точности. поэтому все едлают на емкостных датчиках, потмому что электрическое поле расходящееся и более предсказуемо. А вот если вы делаете татчик для коневеера, всякой механики, то ориентция поля всегда более менее понятная и закреплена в констурукции. Поэтому в промышленном оборудовании предпочтительны магнитные датчики, как более надежные. И никто обычно не использует решетки из датчиков, а измеряют ток индукции, калибруя по нему расстояние. За исклчением мироконтроля в дефектоскопии, где все же можно применять пространственную решетку для скоростной дефектоскопии больших поверхностей и для квази-томографии. Quote Share this post Link to post Share on other sites More sharing options...
AlanSbor 0 September 13, 2021 Posted September 13, 2021 · Report post 14 часов назад, _pv сказал: 1) чем плотнее - тем лучше. а оптимально по какому критерию? а. По форме расположения датчиков, 6 угольником например, магнитное поле магнита будет "задевать" сразу несколько датчиков без избытка самих датчиков. б. По количеству датчиков. Т.к. по протоколу I3C с датчиками работать не получится, придется по I2C работать. Но у магнитных датчиков этой компании есть плюшка - один адрес на всю серию датчиков, поэтому будут мультиплексоры и что бы их не городить кучу, я ввел искусственное ограничение по количеству датчиков для формата А4 - 64 датчика. Мультиплексоры могут иметь 8 разных адресов (перемычками задаются) и работать с 8 каналами (1 пара сигналов I2C - 1 канал). Датчики очень чувствительные (настраиваются через софт) разрядность 18 бит MEMSIC MMC5983MA Цитата Fully integrated 3-axis magnetic sensor and electronic circuits requiring fewer external components Superior dynamic range and accuracy * ±8G FSR* 18bits operation* 0.4mG total RMS noise* Enables heading accuracy of 0.5º Max output data rate of 1000Hz Industrial standard low profile package 3.0 x 3.0 x 1.0mm Degaussing with built-in SET/RESET function * Eliminates thermal variation induced offset error (Null field output)* Clears the residual magnetization resulting from strong external fields On-chip sensitivity compensation On-chip temperature sensor Data_Ready Interrupt Low power 1µA power down current I2C Slave, FAST(≤400KHz) mode 14 часов назад, _pv сказал: 2) надо всего лишь посчитать поле от магнита в пространстве, (причем совсем честно, аналитически для цилиндрического магнита оно, насколько помню, во всём пространстве не очень считается, что-то там всё равно интегрировать придётся численно и как-то аппроксимировать) потом для всех датчиков, чьё положение в пространстве известно, выразить поле магнита B(x,y,z,mx,my,mz) в зависимости от его положения x,y,z и направления mx,my,mz , и наконец, наименьшими квадратами по показаниям датчиков найти положение магнита в пространстве относительно датчиков, которое даст минимальную разницу с посчитанного с измеренным. только вот магнит который можно повесить на "карандаш", чтобы при этом им ещё можно было писать, на расстоянии 40мм хорошо если будет создавать поля в единицы мТл, то есть десятки Гс. это при земном поле в 0.5Гс, Цитата Sensitivity Accuracy With18bits operation 16384 Counts/G Чувствительности должно хватить. 14 часов назад, _pv сказал: и при повороте планшета, или например если его положить на стол у которого под столешницей железная рама, чтобы при этом он не начинал сам по себе рисовать, думаю "попроще" не особо получится. обычно там всё-таки по ВЧ измеряют, в стилусе колебательный контур, который ещё и меняется при нажатии/касании, а в планшете куча дорожек по столбцам/строкам для возбуждения и измерения отклика. Железная рама как любые железки в радиусе 10 метров исключаются. Тут все хорошо - полное безжелезье. Придут датчики с магнитами поле измерю. Сейчас датчик измерительный на ардуино или esp32 соберу. Проверю на магнитах которые у меня есть дома. Quote Share this post Link to post Share on other sites More sharing options...
_pv 21 September 13, 2021 Posted September 13, 2021 · Report post 6 hours ago, Hale said: плохая идея делать дигитайзер на магнитных датчиках. да, идея не самая хорошая, но не из-за "непредсказуемости" магнитного поля, оно точно так же предсказуемо как и электрическое, просто дипольное, и соответственно спадает от расстояния уже как 1/r^3, что даёт слабые сигналы и плохой сигнал/шум на фоне поля Земли и искажений этих от любых окружающих предметов с магнитной проницаемостью >1. естественно для получения положения надо не тупо искать максимум поля, а решать немного более сложную обратную задачу "где должен находиться магнит и куда направлен чтобы распределение полей в плоскости датчиков было таким как измерено". Quote Share this post Link to post Share on other sites More sharing options...
AlanSbor 0 September 13, 2021 Posted September 13, 2021 · Report post 13 часов назад, rkit сказал: Для начала нужно взять этот магнит, и посмотреть, что он вообще из себя представляет в плане полярности и силы поля. Магнитное поле измерю когда придет. Магнит цилиндрический с отверстием. Quote Share this post Link to post Share on other sites More sharing options...
_pv 21 September 13, 2021 Posted September 13, 2021 · Report post 3 minutes ago, AlanSbor said: а. По форме расположения датчиков, 6 угольником например, магнитное поле магнита будет "задевать" сразу несколько датчиков без избытка самих датчиков. б. По количеству датчиков. Т.к. по протоколу I3C с датчиками работать не получится, придется по I2C работать. Но у магнитных датчиков этой компании есть плюшка - один адрес на всю серию датчиков, поэтому будут мультиплексоры и что бы их не городить кучу, я ввел искусственное ограничение по количеству датчиков для формата А4 - 64 датчика. Мультиплексоры могут иметь 8 разных адресов (перемычками задаются) и работать с 8 каналами (1 пара сигналов I2C - 1 канал). Датчики очень чувствительные (настраиваются через софт) разрядность 18 бит MEMSIC MMC5983MA вместо 64х датчиков которые в 150$ за одни только сенсоры выйдут проще нормальный экран взять от какого-нибудь планшета со стилусом. а вместо гирлянды мультиплексоров возможно проще будет сделать кучу "программых" i2c соединив scl по строкам, а sda по столбцам. ну и клоки потом ещё можно дополнительно мультиплексировать каким-нибудь 74HC154. соединял так 16х16 = 256 датчиков из-за одинакового i2c адреса. Quote Share this post Link to post Share on other sites More sharing options...
rkit 0 September 13, 2021 Posted September 13, 2021 · Report post 16 minutes ago, AlanSbor said: Магнитное поле измерю когда придет. Магнит цилиндрический с отверстием. И эта картинка имеет какое-то отношение к реальному устройству, которое ты пытаешься склонировать, или просто хрень, которую ты наспех нашел в интернете? Quote Share this post Link to post Share on other sites More sharing options...
AlanSbor 0 September 13, 2021 Posted September 13, 2021 · Report post 28 минут назад, _pv сказал: вместо 64х датчиков которые в 150$ за одни только сенсоры выйдут проще нормальный экран взять от какого-нибудь планшета со стилусом. Хочу именно повторить конструкцию. Упростить , удешевить это дело второе будет. 28 минут назад, _pv сказал: а вместо гирлянды мультиплексоров возможно проще будет сделать кучу "программых" i2c соединив scl по строкам, а sda по столбцам. ну и клоки потом ещё можно дополнительно мультиплексировать каким-нибудь 74HC154. соединял так 16х16 = 256 датчиков из-за одинакового i2c адреса. Интересное решение. Схемы или набросков не осталось ? 23 минуты назад, rkit сказал: И эта картинка имеет какое-то отношение к реальному устройству, которое ты пытаешься склонировать, или просто хрень, которую ты наспех нашел в интернете? Показан тип намагниченности. Параметры магнита пока недоступны, по почте идет. Quote Share this post Link to post Share on other sites More sharing options...
rkit 0 September 13, 2021 Posted September 13, 2021 · Report post 44 minutes ago, AlanSbor said: Показан тип намагниченности. Источник? Quote Share this post Link to post Share on other sites More sharing options...
_pv 21 September 13, 2021 Posted September 13, 2021 · Report post 1 hour ago, AlanSbor said: Железная рама как любые железки в радиусе 10 метров исключаются. Тут все хорошо - полное безжелезье. Придут датчики с магнитами поле измерю. на Луне или Марсе использовать будете? у датчика диапазон +-8Гс, если планшет просто повернуть в пространстве, все датчики изменят показание на 0.5Гс земного поля. это поле тоже конечно можно включить в "конфигурацию магнита" и найти по показаниям не только ориентацию магнита относительно планшета, но и ориентацию планшета относительно Земли, но наличие произвольного сигнала в 10% от шкалы который надо дополнительно компенсировать, точность, как сами понимаете, совсем не увеличивает. поле магнита элементарно в каком-нибудь femm или Radia считается, 5х5, отверстие 3, фиолетовая область - 8Гс диапазона датчика, на расстоянии 40мм - 2Гс. 1 hour ago, AlanSbor said: Интересное решение. Схемы или набросков не осталось ? МК -> 74hc154 -> 16 scl на датчики которые объединены по строкам. 16 sda объединённых по столбцам -> 16 io МК. ещё одна из первых версий этого же девайса была с одним i2c на все датчики, но каждый датчик был запитан прямо с выхода стоящего рядом с ним sn74lvc1g08 у которых входы были также объединены по строкам/столбцам, и поданы на два i2c gpio extender типа ТСА9535. для включения/выключения питания каждому датчику поочереди. но захотелось читать побыстрее, да и постоянно дёргать питание измерительным датчикам так себе идея, и вообще повезло ещё что i2c это открытый коллектор и датчики с отключенным питанием через какие-нибудь защитные диоды с шины запитаться не пытаются. Quote Share this post Link to post Share on other sites More sharing options...
AlanSbor 0 September 13, 2021 Posted September 13, 2021 · Report post 1 час назад, rkit сказал: Источник? Сайт изготовителя планшета с которого буду копию делать. Одной стороной идет рисование, переварачивают карандаш и магнит идет стирание. Quote Share this post Link to post Share on other sites More sharing options...
AlanSbor 0 September 13, 2021 Posted September 13, 2021 · Report post 42 минуты назад, _pv сказал: на Луне или Марсе использовать будете? у датчика диапазон +-8Гс, если планшет просто повернуть в пространстве, все датчики изменят показание на 0.5Гс земного поля. это поле тоже конечно можно включить в "конфигурацию магнита" и найти по показаниям не только ориентацию магнита относительно планшета, но и ориентацию планшета относительно Земли, но наличие произвольного сигнала в 10% от шкалы который надо дополнительно компенсировать, точность, как сами понимаете, совсем не увеличивает. поле магнита элементарно в каком-нибудь femm или Radia считается, 5х5, отверстие 3, фиолетовая область - 8Гс диапазона датчика, на расстоянии 40мм - 2Гс. Программы скачаю, попробую, спасибо. Из такого графика сразу видно, что и где. На Земле. Так это же хорошо или нет ? 0,5Г - к центру Земли, учитываем при расчетах. Если знаем параметры магнита, соответственно и увидим и на показаниях датчиков что его повернули, по данным с датчиков на магнитный полюс Земли тоже увидим на сколько его (датчик, планшет) повернули. Учесть в софте, что такое может быть и правильно результаты с датчиков интерпретировать. 42 минуты назад, _pv сказал: МК -> 74hc154 -> 16 scl на датчики которые объединены по строкам. 16 sda объединённых по столбцам -> 16 io МК. ещё одна из первых версий этого же девайса была с одним i2c на все датчики, но каждый датчик был запитан прямо с выхода стоящего рядом с ним sn74lvc1g08 у которых входы были также объединены по строкам/столбцам, и поданы на два i2c gpio extender типа ТСА9535. для включения/выключения питания каждому датчику поочереди. но захотелось читать побыстрее, да и постоянно дёргать питание измерительным датчикам так себе идея, и вообще повезло ещё что i2c это открытый коллектор и датчики с отключенным питанием через какие-нибудь защитные диоды с шины запитаться не пытаются. Интересное решение. Но читать побыстрее, это не так важно, скорости шины и так хватает. По схематике мультиплексоров и датчикам, возможно увеличить скорость до 3МГц, или до стандартного 1.7МГц в режиме Fast+. Жаль что нет поддержки в процессорах(контроллерах) I3C 12.5 МГц шина и никаких танцев с бубном. По датчикам производитель говорит, что можно работать с такой шиной и на такой скорости без танцев с бубном. По мультиплексорам из даташитов видно, что поддержка скорости есть. Если читать 64 датчика со скоростью шины 400кгц. то получим скорость считывания грубо ... (400/2) кГц / 64 примерно 3,125кГц, каждый датчик 3125 раз в секунду. Частота занижена для учета худшего случая (кривые сигналы, софт, кондеры плохие, резюки не резистят, Луна не в том квадранте и т.д.). Процессор успеет запросить, принять и обработать в цикле все показания. Quote Share this post Link to post Share on other sites More sharing options...
rkit 0 September 13, 2021 Posted September 13, 2021 (edited) · Report post 57 minutes ago, AlanSbor said: Сайт изготовителя планшета с которого буду копию делать. Одной стороной идет рисование, переварачивают карандаш и магнит идет стирание. И на этот сайт есть ссылка? На страницу с источником? Edited September 13, 2021 by rkit Quote Share this post Link to post Share on other sites More sharing options...