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

Xenia

Модератор FTP
  • Постов

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

  • Победитель дней

    3

Сообщения, опубликованные Xenia


  1. Самая хорошая версия STM32CubeProgrammer - 1.4.0. В более поздних версиях всё усложнили так, что стало сложно разобраться (трудно запомнить, какие кнопки жать 🙂 - слишком уж их много стало). Только этой версией и пользуюсь, а от более поздних отдаунгрейдилась.

  2. 13 часов назад, krux сказал:

    в краткосрочной перспективе (неделя... месяц) это все канает. Но. Блин. у нас магнитный полюс плывет сейчас с огромной силой и нужно отказываться от компасов и т.д.

    Магнитный северный полюс  дрейфует в сторону ... северного географического полюса, а потому век от века компасы становятся всё точнее 🙂.

    752402589_.webp.3a3bb723c6ac9839a6107dae94abb1ba.webp

     

     

  3. А не сделать ли для магнитометра ... медный кожух/экран? Постоянному магнитному полю он не повредит и показания компаса исказить не должен.

    Тогда как магнитное поле шаговых двигателей - переменное (их обмотки то и дело перемагничиваются), а потому магнитным экраном должно сильно ослабляться (токи Фуко и всё такое).

    Понимаю, что большую часть времени шаговые двигатели находятся в режиме удержания, когда магнитное поле имеет одну и ту же направленность, однако и в этом случае драйвер питает обмотки не постоянным током, а импульсным (т.к. ток через обмотки регулируют обычно скважностью меандра) , а потому моя идея все равно может сработать (т.к. наведенная ЭДС возникает не только от перемагничивания, но и от любого рода изменения магнитного поля).

  4. 22 часа назад, jcxz сказал:
    В 25.10.2022 в 21:02, Xenia сказал:

    Самой корректной прошивкой для ВАШЕГО 3D-принтера может быть только ... фабричная 🙂, поскольку на заводе хоть кто-то этим принтером занимался.

    Насколько она "корректная" Вы можете оценить прочитав мои посты. Если при сборке прошивки компилятор выдаёт почти 4 тысячи(!) варнингов, то такая прошивка по определению не может считаться корректной.

    Варнинги это не показатель качества ПО, а лишь свидетельство того, что компиляторы слишком разные. Особенностью GCC является то, что он слишком покладистый :). Народ, не избалованный количеством бесплатных компиляторов под Linux, из него веревки вил. На его базе было создано много разных компиляторов для множества языков, в том числе ассемблеров для микроконтроллеров. Типа того, что программу пишешь на родном языке ассемблера, а спереди вставлен такой инклюд, который переопределяет чуждой язык в С, но не путем компиляции, а с помощью хитроумных дефиниций в том инклюде определенных. Примерно тем же способом GCC компилирует и ардуино-скетчи, хотя в общем-то такого языка нет. Понятно, что в нативном виде IAR не стал бы эти скетчи компилировать. А варнингов было бы много не столько от расхождениях в стандартах языка C, сколько в расхождениях управляющих опций, жесткого стандарта на которые нет. Скажем, я когда-то пыталась скомпилировать чужой проект на MSVC, написанный на Watcom C/C++ - ничего у меня не получилось, причем из всех щелей лезли не только варнинги , но и эрроры. А вот под родным компилятором (на котором проект был изначально написан) компиляция проходит как без ошибок, так и без варнингов. Отсюда следует, что это отнюдь не программистские ошибки, а эффект несовместимости компиляторов.

     

    22 часа назад, jcxz сказал:
    В 25.10.2022 в 21:02, Xenia сказал:

    Причем большинство из них действительно красиво сделаны.

    Я бы так не сказал. Например даже в моей плате - целая куча странных решений. Начнём с того, что почти все пины МК заняты (МК - в LQFP100, а LCD подключен на параллельный FSMC-интерфейс) и при этом дефиците пинов, разработчик зачем-то лепит на неё 2 разных чипа флешь. Причём на разные интерфейсы: один на SPI (8 МБ), другой - на I2C (16К). Вот зачем это? Если уж впаяли 8МБ на SPI, то туда же можно и настройки сохранять. Или другое - МК имеет встроенный USB, при этом они зачем-то ставят CH340G и садят его на UART. Да - ещё там стоит WiFi модуль (на ESP8266), но такое ощущение, что он там только для потребления питания. Как его использовать и для чего - непонятно.

    Красоту изготовления я оценивала на глаз - по качеству изготовления (разводка+монтаж), а качество схемотехники не анализировала. Опять же я уже объясняла ранее, что такие платы китайцы делают "на вырост", т.е. рассчитывая ее не на применение в каком-то конкретном 3D-принтере, а для принтеров максимально широкого ассортимента. А те, кто будет капризничать типа "WiFi мне не надо", пусть заказывают индивидуальную разработку и производство свое платы по цене в 10-20 раз дороже за штуку.

    Кроме того, платы большого размера, которые выпускались раньше (именно такую я выбирала), делали более качественно, но "лишних" разъемов у них было еще больше. Однако в отношении себя я считала это не недостатком, а достоинством. Скажем, раньше вместо кварцевого резонатора ставили кварцевый генератор. По каналу USB стояла FT232, а позднее ее заменили на CH340.

     

    22 часа назад, jcxz сказал:
    В 25.10.2022 в 21:02, Xenia сказал:

    У меня знакомый как-то купил себе 3D-принтер, который с ходу не заработал - вот он и вздумал в него залить "самую свежую" прошивку, не потрудившись сохранить старую/фабричную. С тех пор он у него в кладовке пылится - мастеровые не смогли его реанимировать.

    Вчерашнюю ночь я потратил на редактирование "Configuration.h" из Марлина. И компиляцию затем прошивки. Скомпилиться - скомпилилось. А вот то, правильно ли понял и выставил всё это стадо ключей в "Configuration.h" - скоро узнаю (после прошивки). Они бы хотя-бы подписали все эти ключи и их значения, то многое пришлось ставить наугад.

    Например: X_DRIVER_TYPE/Y_DRIVER_TYPE/Z_DRIVER_TYPE/E0_DRIVER_TYPE. У меня везде стоят "TMC2209". Но среди допустимых значений имеется два разных выбора: "TMC2209" и "TMC2209_STANDALONE". В чём отличие и какой ставить мне - не понятно. В инете по этому поводу мутно объясняют, почти ничего нет. И таких ключей там много (пришлось ставить почти наугад).

    Да, именно в "Configuration.h" и в Configuration_adv.h и заключена вся мудрость настройки :), всё остальное обычно править не приходится. А между "TMC2209" и "TMC2209_STANDALONE", думаю, различие небольшое - драйвер не получит вреда, если эти дефиниции перепутать. Хуже было бы, если бы вы не поставили ни одного из этих дефиниций для драйвера "TMC2209" - у драйверов от TI другая логика работы (у меня используется A4988, который работает по умолчанию).

     

    22 часа назад, jcxz сказал:

    PS: Естественно - перед прошиванием какой-то прошивки, я сохраню исходную. Благо хоть SWD-разъём на плате имеется.

    Прошивку можно прочитать тем же способом, как и залить - через USB-порт с помощью avrdude:

    avrdude -Cavrdude.conf -patmega2560 -cstk500V2 -PCOM%1 -b115200 -D -Uflash:r:read.hex:i

  5. В 25.10.2022 в 13:37, jcxz сказал:

    Мне нужна корректная прошивка для моего 3D-принтера, в котором стоит указанная плата. Производитель даёт ссылку на исходники: https://github.com/makerbase-mks/MKS-Robin-Nano-Firmware

    как исходники прошивки своей платы. Я их скачал, глянул..... :shok: волосы встали дыбом!!! Цензурно описать их невозможно. Такое ощущение, что писали школьники, к тому же обкуренные. Полный бардак в исходниках. Быдлокод и ардуинщина в своей самой худшей форме. При компиляции IAR выдаёт больше 3 тысяч варнингов!

    Понятно, что и прошивка глючит во многих местах (почему я и полез за исходниками).

    Вот теперь думаю - пытаться эту исправить или искать может более свежую, надеясь что хоть часть багов поправили?

    Самой корректной прошивкой для ВАШЕГО 3D-принтера может быть только ... фабричная 🙂, поскольку на заводе хоть кто-то этим принтером занимался. В других местах, где производятся 3D-принтеры других типов (но на той же плате MKS-Robin-Nano-V2), про особенности ВАШЕГО КОНКРЕТНОГО 3D-принтера не знает никто. Т.е. корректность прошивки в отношении платы и корректность ее в отношении самого принтера - в общем-то разные вещи, хотя корректность в отношении принтера подразумевает то и другое.

    Причина этого в том, что количество разнообразных 3D-принтеров, если еще не 10 тысяч, то уже приближается к этой цифре. Число существующих управляющих плат доходит до 100, хотя их реальный ассортимент (т.е. то, что продается) имеет тенденцию к снижению, т.к. производить такие платы большими тиражами гораздо выгоднее, чем малыми партиями, как для производителя, так и для покупателя. Скажем, в розницу одна лишь голая микросхема atMega2560 стоит дороже, чем вся эта плата целиком.  Именно этим эти платы так меня заинтересовали - прежде всего своей дешевизной. Причем большинство из них действительно красиво сделаны. То же самое можно сказать и о выносных дисплеях, которые используют в качестве пульта управления.

    А вот Марлин у нас только один для всех принтеров :). Преувеличиваю, конечно, но близко к истине, что находит себе подтверждение в том, что абсолютное большинство управляющих плат - Ардуины. А Ардуины они потому, что так написал свою прошивку Марлин :). А кто по стопам Марлина идти побрезгут, тот будет писать свою прошивку многие годы 🙂 и потратит на эти усилия половину отпущенного бюджета.

    В 25.10.2022 в 13:37, jcxz сказал:

    Производитель даёт ссылку на исходники: https://github.com/makerbase-mks/MKS-Robin-Nano-Firmware

    как исходники прошивки своей платы. Я их скачал, глянул..... :shok: волосы встали дыбом!!! Цензурно описать их невозможно. Такое ощущение, что писали школьники, к тому же обкуренные. Полный бардак в исходниках. Быдлокод и ардуинщина в своей самой худшей форме. При компиляции IAR выдаёт больше 3 тысяч варнингов!

    Понятно, что и прошивка глючит во многих местах (почему я и полез за исходниками).

    У меня вот тоже от лицезрения этого кода косички дыбом встали :), то быстро разобралась что к чему. Причем не в самом коде, а почему он такой "дурной". А это не злой умысел и не халтура, а традиция у адуинщиков такая 🙂. И использовать для компиляции следует "Arduino Studio" (там компилит GCC, а не IAR). Оно, конечно, плохо, что язык C++ так сильно расползается в стандартах, но со своим уставом в чужой монастырь не ходят.

    Тем не менее, дело обстоит еще хуже, и вовсе не GCC тому виной, а ... традиции ардуинщиков, который сложились еще с первой Ардуины на atMega8. А традиция эта такова, что про устройство микроконтроллера надо ... полностью забыть (!), пронумеровать его микросхему в порядке возрастания номеров только те пины, которыми МК может дрыгать (менять на них высокий потенциал  с низким, а про прочие применения начисто позабыть. Далее надо списать откуда-нибудь код, которым этими пинами дрыгают(это обычно 1-2 инструкции) и про контроллер больше вспоминать. Тогда как электронщики, с которыми я знакома, упирают в "даташито-читанизм" :). Отсюда и разный взгляд на вещи: профессиональные электронщики ковыряются внутри контроллера, а принтеро-строители мыслят в рамках логики принтера, а о контроллере вообще не думают. Т.е. для последних принтер - СЧПУ, для которого высокая тактовая частота скорее избыточна, чем необходима. А если что-то нужно специфическое, то ардуино-библиотеки для этого в самый раз.

    Именно в том и состоит "всеядность" прошивки Марлина, что, будучи заядлым адруинщиком, писал свою программу не под контроллер, а под логический автомат. А познаниями в электронике совсем не пользовался :). В проекте Марлина есть заголовочный файл boards.h, который перечисляет МК, пины которых уж пересчитаны. Вот комбинацией этих определение и получаются прошивки для всех плат. И все остальное (драйверы двигателей, концевики на замыкание и на размыкание, управление нагревателями и пр.) сделано единообразно - выбираешь тип микросхемы и "активируешь" соответствующий дефайны (обычно называемые одноименно).

    Поведу итог. Ни одна прошивка Марлина к конкретному принтеру не подойдет! Проект Марлина следует рассматривать исключительно, как ЛЕГО-конструктор, требующий тщательной настройки/подгонки под конкретное железо. У меня знакомый как-то купил себе 3D-принтер, который с ходу не заработал - вот он и вздумал в него залить "самую свежую" прошивку, не потрудившись сохранить старую/фабричную. С тех пор он у него в кладовке пылится - мастеровые не смогли его реанимировать.

  6. 19 часов назад, jcxz сказал:

    Интересно: кто-нибудь разбирался/модифицировал прошивку своего принтера?

    Особенно интересна эта плата:  https://github.com/makerbase-mks/MKS-Robin-Nano-V2.X/wiki/Wiring_Pinout_and_Size

    Я разбиралась и модифицировала под свои цели плату "MKS Gen V1.4". Купила 2 штуки с рук за полцены на Авито. Это, я полагая, одна из самых крупных плат такого рода, разве что за исключением платы  "MKS Monster8", чьё название говорит само за себя. :). А нынче ассортимент крупных плат (а стало быть, и удобных!) из продажи вымыли карлики, да еще и с гордостью носящих приставку "нано". Как будто такую плату я с собой в кармане буду носить.

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

    К сожалению, мой опыт модификации мало чем вам может пригодиться - другая задача. А модифицировать мне пришлось "врожденные" ограничения 3D-принтера длиной его штанг и направляющих. И хотя системой G-кодов плату можно перевести в относительную шкалу (не координату задаем, а смещение от текущего положения), прошивка на плате такова, что дальше виртуального края "рельса"движки крутиться не хотят, и командами это ограничение отменить невозможно.

    Так что если вам тоже  плата под 3D-принтер нужна, то идите на сайт https://marlinfw.org/ . Там сорцы программ под эти платы раздают, где внутри полно комментариев. Вполне можно сообразить, в каком месте там ковырять. Например, я добавила к уже существующей прошивке свои коды, назвав их "P-кодами" (там уже ранее были G- и M-коды). А если не так, то смело стирайте их дурную прошивку и пишите свою заново :).

  7. 2 часа назад, ppram5 сказал:

    Выбор пал на STM32F401CCU6. Тактовая устраивает, скорость АЦП тоже. Цена опять же вполне приемлемая. Начал изучать АПЦ - а там чудеса... Внутри не оказалось источника опорного напряжения, даже одного. В корпусах 48/64 вывода вывод Vref+ не выведен на ружу.

    Почему не выведен? Выведен! Это нога VREF+ (отмечено красным контуром).

    image.thumb.png.d5548d8a0f5e3589476b26283c2b01b6.png

  8. 6 часов назад, b-volkov сказал:

    Да, с буковкой я ошибся, нужен ZGT6, просто не было под рукой документации, когда писал. 

    Теперь, когда ситуация наконец-то прояснилась, могу предложить заменить STM32F746ZGT6 на STM32H743ZGT6.

    Предполагаю, что F7-ые исчезли из продажи потому, что их вытеснили H7-ые. Отсюда и моя мысль, что они в значительной мере взаимозаменяемы.

    Но цоколевки я у них не сравнивала - все 144 пина очень долго проверять :).

  9. 16 часов назад, MrYuran сказал:

    Встроенная качественная опора, тактирование, подтяжки, секвенсер каналов, мощный SINС фильтр, диагностика.

    По сравнению с тем г-ном мамонта мощный автоматизированный комбайн.

    ADS1255/1256 - не говно мамонта, а славный ветеран! :) Кажись в этом или следующем году ему исполнится 20 лет. Но, по-моему, даже сейчас китайцы не могут его повторить, выпуская высокоразрядные АЦП заметно хуже по качеству.

    Да и вообще, с тех пор как TI приобрела Burr-Brown, их АЦП стали лучше, чем у AD. Сейчас AD их, по-видимому, догнала, но едва ли перегнала. Впрочем, эти две компании уже давно с воодушевлением друг с другом бодаются. Я же болею за TI :).

     

    А что бы вы сказали про более современный ADS1262/1263, который бы я назвала его приемником?

  10. 2 часа назад, makc сказал:

    Галка - это дизайн такой. Не нравится - убрал. :-)

    Если бы галки были на обоих вариантах выбора, тогда бы они не мешали. Но когда на одном варианте галка стоит, а на другом нет, то это побуждает выбрать "Отметить сайт прочитанным" еще не дочитав до конца :).

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

  11. 4 часа назад, makc сказал:

    Сделал доработки, проверьте, пожалуйста.

    Работает.

    Но было бы желательно убрать галку перед ссылкой "Отметить сайт прочитанным" или объяснить, какие преимущества одна дает по сравнению с ссылкой "Загрузить еще активность" (перед последней галки нет).

    image.png.4e8b8cbf63f3a9b17c55ea164b99bef0.png

  12. В 03.07.2022 в 19:36, makc сказал:

    В ближайшее время добавлю эти кнопки.

    Может быть тогда заодно продублируете кнопку "Отметить сайт прочитанным" (в виде ссылки) после сообщения "Активности для отображения нет"? Т.к. именно это сообщение выскакивает после того, как  список сообщений просмотрен до конца. Иначе приходится совершать обратный поход к заголовку форума, чтобы отметить этот список прочитанным, тогда как он может оказаться очень длинным, а поход долгим.

    Ну и заодно падеж у слова "отображение" исправьте во фразе "Активности для отображение нет".

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

  13. Подскажите, как с нынешними нововведениями отметить "непрочитанные сообщения" прочитанными?

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

     

    P.S. Субъективное ощущение у меня таково, что нововведения делаются только затем, чтобы затруднить пользователям работу с форумом.

  14. В 13.06.2022 в 09:51, yes сказал:

    не все настолько раскрепощены в выборе ПО (то есть, есть места, где могут спросить, а откуда у вас этот матлаб? покажите квитанцию об оплате)

    По нынешним временам при покупке ПО папка с документами не выдается :), а практически везде применяются "электронные лицензии". Типа денежку заплатил - получи номерок/ключик.

    Вот, скажем, часто вас спрашивали "откуда у вас Windows?" и предлагали предъявить товарный чек на нее? Так вот и на Matlab никто чека у вас не попросит. А если попросит, то покажите любой номер и скажите, что якобы именно он ваш Matlab отпирает. Тем более в условиях, когда большинство программ без лицензии не работают, один лишь факт работоспособности вашего Matlab'а есть уже косвенное свидетельство того, что он был куплен.

  15. Не все похоже знают/помнят, что название Matlab происходит не от слова "математика", а от слова "матрица". А потому те, кто в векторном и матричном виде мыслить не умеет :), а использует Matlab как калькулятор или как еще один язык программирования, будут видеть в нем одни лишь недостатки, т.к. язык у него не шибко приятный.

    А что касается его доступности, то у нас на ftp накопилось уже много его версий (вместе с лекарствами). Причем нетрудно добыть такую версию на RuTracker или где-то еще в подобных местах. Лично я использую Matlab 2017-го года (R2017a), поскольку поздние версии монстрообразные за счет добавления новых возможностей (в основном по части моделирования каких-то процессов), большинство которых мне не нужны.

  16. 9 часов назад, alexPec сказал:

    Понадобилось мне тут анализировать состав некоего газа. Там может быть Be, C, O2, H2, Ge, P и т.д.

    Подозреваю, что вы не элементный состав собрались анализировать (об этом косвенно свидетельствует слишком большой список, который едва ли может встретится в одном веществе), а количественный состав газовой смеси, состоящей из разных веществ. А это - несколько разные задачи. Для решения последней задачи масс-спектрометр плохо годится, т.к. по своей природе этот метод не количественный. Т.е. если, скажем, сигнал от H2 оказался в 5 раз больше сигнала от O2, то это совершенно не означает, что содержание H2 в газовой смеси в 5 раз большее, чем содержание в ней O2. Причина этого в том, что молекулы разных веществ по разному ионизируются (например, электронным ударом), а потому и выход ионов может отличаться на порядки.

     

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

     

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

    https://docs.cntd.ru/document/1200028066

     

    К тому же газовый хроматограф намного дешевле масс-спектрометра.

×
×
  • Создать...