Pull to refresh
4
0
Send message
Скорее всего парапланерная пищалка сходит с ума рядом с реактивными двигателями, а других вариантов в общем и нет — не радар же ему вешать.
Моих знаний недостаточно, чтобы высказываться о статье «по существу». Но мне кажется, статья сильно выиграла бы, если бы ее разделили на две явные половины:
— Теории и работы, которые вы упоминаете
— Гипотеза, которую вы предлагаете.
В тесте достаточно много упоминаний идей и известных теорий (пусть даже спорных), и очень сложно отделить их вашей гипотезы.

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

«Азиатская версия» тоже может быть экспортной. Телефоны, которые вы купите в Китае могут быть неплохо сделаны, но пользоваться… вы лучше предпочтете рак мозга, чем пользоваться этим. Реклама, банеры, каждое приложение пытается перехватить контроль над микрофоном и впихнуть свой рекламный банер повыше других. Каждое приложение в этом телефоне непрерывно пишет и отсылает все возможные логи всех действий и перемещений, про это даже рассказывать не надо. Каждое приложение разумеется весит по несколько сотен мегабайт, умеет все на свете, и пытается перехватить на себя все симлинки, особенно платежные реквизиты. И таких неудаляемых приложений в нормальном, обычном телефоне для китайского рынка несколько десятков.
Просто представьте себе, что злобные хакеры подменили каждое приложение которое было на вашем новом телефоне, на поддельное приложение с похожим названием. Все, готово, вот это нормальный телефон для внутреннего китайского рынка.
reports that porting the code over to the ESP32 wasn’t terrible, but it wasn’t exactly a walk in the park either. The bulk of the code went by without too much trouble, but when it came to the parts that needed precise timing things got tricky
Просто покрутить один мотор влево-вправо, действительно, тривиально. С учетом, что библиотека так и так требует вызова Step() для каждого из моторов в отдельности, проще было переключать самостоятельно.

А вообще, управление несколькими моторами может оказаться неожиданно сложной задачей.
Навскидку:
Заголовок спойлера
— направление DIR нужно выставлять заранее, за несколько микросекунд до STEP/PUL
— STEP должен быть определенной, одинаковой, длины. Нельзя просто в цикле или прерывании его переключать 1 / 0, плюс к этому драйвер может ловить шаг по переднему или заднему фронту
— нужно гарантировать равномерность шагов (и равномерность ускорения). Если на простом Arduino это и решается просто, то уже на более сложном окружении ESP32 приходится идти на хитрые трюки, чтобы обеспечить равномерность. И это на 80 мегагерцах!
— шаги нужно выдавать одновременно на несколько моторов. На самом деле одновременно, а не по очереди. Нельзя делать смелые предположения, «а пусть один мотор запаздывает на несколько микросекунд от остальных».
— на «другом конце» может оказаться вообще не шаговый драйвер, а PID контроллер, например.

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

В Великобритании и в Мексике то же самое.

Салливан — Олимпийский Мики-Маус


  • Мы хотим просветить это животное рентгеном!
    • Виноват. Скачки кончились два часа назад. Она издохла.
    • Издохла? — с угрозой в голосе переспросил Смердяков.
    • Да. Сломала ногу по пути в конюшню. Пришлось пристрелить.
    • Превосходно! Произведем вскрытие.
    • Да ее уже зарыли.
    • Выкопаем.
    • Мы зарыли урну — труп ведь сожгли.
    • НУ И НУ, Шэр-манн...
Были в TMall, что не имело никакого смысла, TMall работает только на Россию. Если кто-то хотел продавать в Россию из РФ, очевидно проще было запустить свой интернет-магазин.
Зарегистрироваться можно было и раньше, но либо в TMall для России (а кому оно нужно), либо кривыми китайскими тропами на адрес в континентальном Китае и с левой симкой.

Новый список стран и нравится (вьетнам тайланд и прочая копеечная электроника в пролете), и не нравится (сейчас все производители из ЕС там окажутся из Италии).

Кнопконажимателям из IT сферы может покажется скучным, а мне как производителю пока очень нравится, правильной дорогой идут китайские товарищи.

На Али комиссия почти всегда лучше чем в Амазоне (с его 95% на некоторые позиции).
Отлично, спасибо. Самое время развести руками и сказать — а что вы ожидали от открытого ПО? Прошло почти 8 (восемь!!!) лет. Дети во второй класс идут, а на Хабре о программе знает 2.5 человека, если считать alizar.
И за словами *весьма* и *по большей части* тут скрыто довольно многое, например что они монополисты и конкурируют только со своими китайскими клонами.

Думаю, ответы про санкции и лазеры будут неожиданные для спрашивающего. Или просто издевательские. Или и то, и другое вместе.

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

CAN-шина прекрасный, открытый стандарт. И посмотрите во что он превратился в автомобилях. Дилеры постоянно оказывают давление на автопроизводителя — дайте нам заработать! Мы купили у вас этот стенд за 20К, мы покупаем у вас программы, запретите это делать пользователям. И разумеется, автопроизводитель идет им навстречу, ведь он так же зависит от продаж через дилеров.

Open Ford (сейчас OpenXC) была прекрасная инициатива, очень смелая. Ну и где сейчас Форд? Ну и кто из читателей Хабра купил себе Форд, потому что там есть открытый стандарт?

Это противоречит всей гипотезе математической вселенной.


Есть гипотеза, что Макс Тегмарк натягивает сову на глобус. И я считаю что это верная гипотеза, потому что если это не так, то это противоречит всей гипотезе, что Макс натягивает сову на глобус. Therefore, Макс натягивает сову на глобус. Q.E.D.
Прекрасная история для начала дня. Сильно напомнила UNSONG Скотта Александра.

Резануло глаз странное смешение «стран Магриба», «Персия» и «её народ, Саудиты». Между всеми этими странами 7 тысяч км по прямой. Как от Москвы до Гонконга.
Да пожалуйста — я могу привести три примера моих любимых контроллеров:

Edge Connect / Phoenix один из самых удачных контроллеров в мире от крупной международной компании, и в нем нет компенсации на ширину. Черная коробочка с хилым процессором? Да. Стоит больше $3000 без экрана и всей остальной электроники «стойки ЧПУ»? Да. Компенсация на инструмент? Нет.

Masso. Гениям которые сделали эту оранжевую коробочку за $600, я бы пожал руку. Но компенсации на ширину здесь нет тоже.

Противоположный пример — GRBL/mini стоимостью $1. Компенсация G41? Нет.

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

Это интересно что вы приводите в пример Mach3, но вы сами-то ожидаете от него устойчивости? предсказуемости? Непредсказуемыми флуктуациями, волей случая программа оказалась популярна в двух странах мира — в Штатах и в России, и больше нигде в мире.
Зачем нужна компенсация на ширину инструмента в контроллере, вопрос не стоит вообще, ответ и так очевиден. Я пытаюсь рассказать, почему в ЧПУ контроллерах ее не делают. А если делают, то только на jet cutting, где вылевшая 7-кг фреза не прилетит оператору в голову, пробьет ее насквозь, и воткнется по хвостовик в бетонную стену, а кто будет её вытаскивать?

Бездумное применение этой функции ведет к неопределенному поведению контроллера, такой контроллер просто опасен.

Я привел простой пример контура выше, а с тех пор как я разрабатывал CAM, у меня есть специальная папка для таких примеров. На некоторых даже крутые CAM программы генерируют странное поведение. Мой любимый пример — внешне совершенно безобидная буква из кельтского алфавита, типа Й, на которой ломаются контроллеры, пытаясь компенсировать её на ширину инструмента. Вы же не хотите чтобы при попытке вырезать совершенно обычный контур вас задавил двухтонный портал внезапно поехавший не туда?

Прибавьте к этому что нормальная компенсация на ширину требует полной загрузки shape в память. А что контроллер будет делать если ему встретится один Shape из двух частей по 2 гигабайта каждый? Многопроцессорный десктоп с навороченным CAM считает такие файлы по часу, что тут сможет stand-alone контроллер с его процессором?

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

В примере Mach3 который вы привели выше, компенсация на ширину инструмента работает не так как вы думаете. И даже такая инвалидная реализация G41 связана кучей ограничений, и запретов на выполнение целого списка G кодов — чтобы никого не убило.
Это проще чем кажется! Посмотрите две pdf:
Mach3_V3.x_Macro_Prog_Ref.pdf
VBScript_Commands.pdf
Скорее всего Вам будет достаточно четырех функций на все случаи в жизни:
GetOEMDRO(), GetUserDRO(), SetUserDRO() и разумеется Code()
> есть ЧПУ не умеющие делать компенсацию диаметра инструмента

Если вы специалист по дорогим ЧПУ, то должны понимать задача компенсации G40 G41 в общем виде вообще никак не решается на стороне контроллера, а должна решаться на стороне CAM, у контроллера просто недостаточно данных для этого.

Я нарисовал пример — красным оригинальный контур, синим и зеленым — пути полученные разными значениями компенсации G41. Можно увидеть что синий путь разбит на два несвязных пути. Что должен в таком случае сделать контроллер?

Если ваше предложение — перестроить порядок выполнения путей, то вы создаете непредсказуемый контроллер, который рано или поздно кого-нибудь искалечит.

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

Information

Rating
Does not participate
Registered
Activity