Делительная головка на Arduino Mega
- Войдите на сайт для отправки комментариев
Пт, 28/09/2018 - 18:13
Затесался тут у меня любезно подаренный Александром @promavto дисплейчик 480х320 на контроллере ILI9481, без тача, 3.2 дюйма. Долго он лежал без дела, и - надоел он лежать себе без дела :)
Короче: потихоньку, для сэбе - пилю прошивку под Arduino Mega и этот экран, для управления делительной головкой: патрон, шаговый, электроника. Эта штука, грубо говоря - для точного позиционирования по окружности - просверлить N отверстий с шагом в N градусов.
Наброски валяются тут: https://github.com/Porokhnya/DividingHead - уже работает главный экран и энкодер с его кнопкой.
Управление будет энкодером с его кнопкой, плюс ещё две кнопки - вперёд и назад, всё. Посмотрел готовые открытые прошивки - там под LCD 16x2 текстовый, позапрошлый век - Александр подсадил на TFT.
Данную тему завёл - как дневник неспешной разработки в свободное время, посмотрим, что из этого выйдет ;) Приглашаю всех интересующихся к обсуждению проекта, буду рад, если кто-то сподвигнется присоединиться в процессе разработки и пробовать собрать это дело у себя.
Исходники прошивки, как видно - в свободном доступе ;) Тема - без претензий на гениальность, архаты идут лесом (ой зря упомянул, щас вонять прибежит).
Сейчас потихоньку набрасываю экраны, крайним этапом - будет подключение собственно шагового (будет по STEP/DIR управляться через драйвер), настройки там, и прочая лабуда. В самом конце - надо будет делать платку под это дело, а то экран сажается сверху на Мегу так, что перекрывает все свободные пины - пока соединил макетными проводами-соплями, дальше будет видно, по мере вскрытия.
Теоретиццки (пока не пробовал, рано) - можно будет скомпилировать под Due - тогда работа с экраном пойдёт пошустрее.
Неужели для этого требуется Мега? Вот уно, например, легко управляет тремя осями....А здесь всего одна, и экран. Или кроме позиционирования она еще что-то делать будет? Может чего не понимаю.... Просто шел мимо.
Так ему и Мегу подарили видимо :)
1. Термин "делительная головка" встречаю впервые. И из описания в исходном сообщении темы так и не понял, что это такое. Коль скоро тема размещена в "Проектах", хорошо бы разместить фото, видео, чертежи и более подробное описание того, что планируется сделать.
2. Уже, минимум, во второй теме за последние 2-3 дня встречаю Ваши опасения насчет низкого FPS на TFT. Нет, ускорить сами жидкие кристаллы - это вряд ли, но вот увеличить скорость вывода в несколько раз (почти на порядок), если отказаться от стандартных библиотек, - это запросто.
Неужели для этого требуется Мега? Вот уно, например, легко управляет тремя осями....А здесь всего одна, и экран. Или кроме позиционирования она еще что-то делать будет? Может чего не понимаю.... Просто шел мимо.
Нет конечно, можно и на 328-м камне. Но смысл копейки экономить? Плюс - TFT много ног занимает, плюс данные для него - в 328-й уже не влезает.
Так ему и Мегу подарили видимо :)
Не, этого добра хватает разного, и без подарков.
1. Термин "делительная головка" встречаю впервые. И из описания в исходном сообщении темы так и не понял, что это такое. Коль скоро тема размещена в "Проектах", хорошо бы разместить фото, видео, чертежи и более подробное описание того, что планируется сделать.
2. Уже, минимум, во второй теме за последние 2-3 дня встречаю Ваши опасения насчет низкого FPS на TFT. Нет, ускорить сами жидкие кристаллы - это вряд ли, но вот увеличить скорость вывода в несколько раз (почти на порядок), если отказаться от стандартных библиотек, - это запросто.
1. Так гуглится легко, собственно. Тема - скорее про электронику для делительной головки, это задел на будущее, так сказать - как сменю патрон на токарном, старый поставлю на делительную головку, к тому времени уже будет гтова электроника.
2. Ну FPS там и правда не ахти, без ухищрений, о которых вы говорите. Насчёт увеличения скорости вывода - согласен, но - мне ехать, а не шашечки, и та же UTFT устраивает более чем, да и наработок много под неё, включая русские шрифты и поддержку UTF-8 при выводе. Так что мои высказывания по поводу FPS - это скорее так - поныть немного :)
З.Ы. По поводу схемы для электроники - всем свое время, как доберусь до схемы - выложу на гитхаб. Пока же - все настройки того, как подсоединено - указаны в прошивке, с комментариями.
Ночью, кстати, прикрутил экран для вращения движка и первые наброски работы с ним через таймер. Сам интерфейс экрана уже полностью рабочий, движок пока не подключал, чуть позже буду проверять. Энкодер со своей кнопкой, плюс две кнопки "вперед" и "назад" - проверены, работают. По сути - осталось не так много, несколько экранов сделать и проверить это дело. В конце, вероятно - сниму и выложу видео с показом всего этого говна, собранного на макетных соплях.
1. Термин "делительная головка" встречаю впервые.
ЗайчеГ!!!
Делительная головка - приспособление для слесарных работ на токарном-фрезерном-сверлильном станках.
Позволяет "разделить" окружность на части, поворачивая детель или инструмент в разные угловые положения.
На фрезерах с помощью Делительно Головки режут щестерни, на сверлильных - само собой сверления по схеме. На долбежке - колхозят шлицы и так далее.
ДГ бывают механические - с одной или набором задающих шестеренок и стопором или с отверстиями (самые распространенные)
Вот пример:
Бывают электронные с щаговым двигателем - ее и делает наш коллега.
--------------------------
Главная задача ДГ это поворот на заданный угол, причем важно, чтобы и первый и второй и двадцатый повороты - были одинаковы ;). То есть отсутствие накапливающейся ошибки.
как сменю патрон на токарном, старый поставлю на делительную головку, к тому времени уже будет гтова электроника.
Кстати хорошая тема сделать держатель для этого на место резцедержателя. Тогда получаешь колхозный фрезер:
фрезу в патрон токарника, в головку - заготовку - и хоть шестигранник, хоть шестеренки простые. Я где-то видел видео - мне понравилось... Правда там парень ДГ просто механику сделал, а с электроникой - можно много чего интереснее придумать.
как сменю патрон на токарном, старый поставлю на делительную головку, к тому времени уже будет гтова электроника.
Кстати хорошая тема сделать держатель для этого на место резцедержателя. Тогда получаешь колхозный фрезер:
фрезу в патрон токарника, в головку - заготовку - и хоть шестигранник, хоть шестеренки простые. Я где-то видел видео - мне понравилось... Правда там парень ДГ просто механику сделал, а с электроникой - можно много чего интереснее придумать.
Фрезерный есть, "школьник", еще не запустил - электрику пересобираю. Но ДГ буду делать с прицелом как раз на то, чтобы можно было и на фрезерном, и на токарном юзать.
Главная задача ДГ это поворот на заданный угол, причем важно, чтобы и первый и второй и двадцатый повороты - были одинаковы ;). То есть отсутствие накапливающейся ошибки.
Честно сказать - опыта грамотной работы с шаговыми у мну - практически нет, по мере сил вникаю в тонкости. Ясное дело, что наверняка делаю велосипед, но одна из задач проекта - получить профит в опыте именно с шаговыми. Сейчас для изменения скорости вращения - просто меняю период таймера, не знаю, насколько это грамотно, но по размышлению - чёткое соответствие заявленной скорости вращения - вторично, первично тут - выделенное жирным в цитате. Т.е. кол-во шагов надо считать мксимально точно, именно поэтому пока начал с экрана простого вращения по зажатию кнопок - там надо только скорость в % от максимальной пересчитывать, да запускать движок по зажатой кнопке и останавливать - по отпущенной. Ну и, плюс - везде неблокирующий код и интерфейс событий системы - люблю я такое дело, грешен.
Посему, если кто подскажет, что кошерного почитать из тонкостей управления шаговым, из тонкостей расчёта с коррекцией накапливающихся ошибок - буду признателен. Оно, конечно, понимание есть, но почитать - никогда лишним не будет. Исходники сторонних библиотек - пока не смотрю принципиально, чтобы не графоманствовать особо.
Фрезерный есть, "школьник", еще не запустил - электрику пересобираю. Но ДГ буду делать с прицелом как раз на то, чтобы можно было и на фрезерном, и на токарном юзать.
Я тебя правильно понял - "школьник" это горизонталка НГФ? Хорошо, но я хочу вертикалку, а пока куплю приспособу на токарник.
Если ты не будешь гнаться за микрошагом, а точность обеспечишь редуктором, то момента у ШД хватит на поворот.
Если нужно "как в космосе" всегда быть уверенным в правильности позиции, то выхода, кроме ОС по энкодеру, нет.
В реальной жизни такая надежность избыточна, следовательно можно иногда, 2-4 раза на круг (0,90, 180, 270) проверять точность положения, не сбился ли на шаг где-то.
Фрезерный есть, "школьник", еще не запустил - электрику пересобираю. Но ДГ буду делать с прицелом как раз на то, чтобы можно было и на фрезерном, и на токарном юзать.
Я тебя правильно понял - "школьник" это горизонталка НГФ? Хорошо, но я хочу вертикалку, а пока куплю приспособу на токарник.
Да, НГФ 110-Ш4, но к нему есть и вертикальная фрезерная голова, на днях уже заказал цанговый патрон ;) Тисков нормальных станочных - нет, да дохрена ещё чего нет, конечно - но работаю над этим ;)
Токарный, кстати, тоже "школьник", ТВ-4 64-го года, емнип - выпуски без лимба продольной ещё. Токарит потихоньку, но слабое место - посадка планшайбы, там конструкторский про@б изначальный, и поэтому "школьники" не отрезают из коробки. Пока коплю на новый патрон, да на вторую планшайбу - а там уже буду решать эту проблему.
Короче, в теме токарно-фрезерной - почти новичок, осваиваюсь потихоньку. Я по деревяшкам больше знаю/умею.
Если ты не будешь гнаться за микрошагом, а точность обеспечишь редуктором, то момента у ШД хватит на поворот.
Если нужно "как в космосе" всегда быть уверенным в правильности позиции, то выхода, кроме ОС по энкодеру, нет.
В реальной жизни такая надежность избыточна, следовательно можно иногда, 2-4 раза на круг (0,90, 180, 270) проверять точность положения, не сбился ли на шаг где-то.
1. Передаточные отношения предусмотрел в прошивке, скорее всего буду делать с редуктором, чтобы момент не терять, и сильно в микрошаг не ударяться. Микрошагом - тоже заморачиваться не планирую, но тоже предусмотрел ;)
2. Это ясно, но пока - просто отложено на подкорку: если понадобится - приделаем ;)
3. Совершенно согласен, в моём случае микронных точностей - не требуется, остальное - покажет практика.
Неужели для этого требуется Мега? Вот уно, например, легко управляет тремя осями....А здесь всего одна, и экран. Или кроме позиционирования она еще что-то делать будет? Может чего не понимаю.... Просто шел мимо.
Нет конечно, можно и на 328-м камне. Но смысл копейки экономить? Плюс - TFT много ног занимает, плюс данные для него - в 328-й уже не влезает.
кстати , ILI9481 можно подключить не только по параллельной шине но и по последовательной.зависит от того позволяет ли это сам TFT модуль.
кстати , ILI9481 можно подключить не только по параллельной шине но и по последовательной.зависит от того позволяет ли это сам TFT модуль.
Вот только по последовательной - печальнее, чем по параллельной, ведь правда, да? ;) Ну не хочу я в 21-м веке отказываться от неких удобств, переводя проект под 328-й камень. Смысла просто не вижу. Скорее всего - я потом адаптирую под Due - и всё, ноу проблем. И будет компилироваться и под Мегу, и под Due. Так что вопрос работы по последовательному интерфейсу с TFT лично для меня неактуален.
Захотел бы делать под 328-й камень - взял бы текстовый LCD, посадил бы на I2C и не парился бы вообще. Да и есть уже готовые прошивки - ну вот не захотел я юзать готовую, неспортивно :) Плюс, как писал выше - не нравятся мне текстовые LCD, выглядят более колхозно, чем любая поделка с TFT.
Понимаете - это не тот случай, где экономия нескольких сотен рублей роляет: оснастка для станков стоит на порядки дороже, чем простая электроника ;)
Приколхозил первую версию экрана шагания по шагам - выбираем кол-во шагов, тут же можно изменить относительную скорость шагания (1-100%) и - вперёд. Клик кнопками - запуск, ещё один клик - досрочный останов. Дебаг-выхлоп показывает, что логика работает нормально, ессно - на движке всё это дело надо будет проверять (как раз валяются DRV8825 бесхозные, правда, свободного движка - нет, надо пошукать, вроде где-то валялся, выдранный из струйника Epson, и вроде даже шаговый).
Пока продумываю, как организовать экраны деления по частям и градусам: очевидно, что туда сразу все настройки не впихнёшь: стараюсь делать крупным шрифтом, поэтому на экране - две настройки максимум, типа "Скорость" и "Кол-во шагов". В случае же экранов деления - там надо отображать текущую позицию, типа "2 из 4" или "60 градусов". Надо подумать, короче.
В любом случае, интерфейс - это дело такое, ещё сто раз перекорёжится, пока пойму, как удобнее и красивше.
Главная задача ДГ это поворот на заданный угол, причем важно, чтобы и первый и второй и двадцатый повороты - были одинаковы ;). То есть отсутствие накапливающейся ошибки.
Честно сказать - опыта грамотной работы с шаговыми у мну - практически нет, по мере сил вникаю в тонкости. Ясное дело, что наверняка делаю велосипед, но одна из задач проекта - получить профит в опыте именно с шаговыми. Сейчас для изменения скорости вращения - просто меняю период таймера, не знаю, насколько это грамотно, но по размышлению - чёткое соответствие заявленной скорости вращения - вторично, первично тут - выделенное жирным в цитате.
Волею судеб полгода назад на TMCL программил такую штуку: https://www.trinamic.com/products/drives/pandrives-details/pd28-x-1021/
Очень интересно почитать о применяемых тринамиком технологиях. Ошибку позиционирования в контроллере отлеживают встроенным энкодером на 1024 позиции. Т.е. дают степ, пока энкодер не встанет на заданную позицию. Так же интересно используется энкодер для определения зажатия вала - если его начинает бить и девиация превысила заданную величину, контроллер перестает давать ток на мотор, чтобы не спалить.
Конечно у тринамика в данном mechatronic solution крайне глубокая взаимная интеграция мотора и контроллера, которой на обычных комплектах не добится. Но точность работы по отзывам эксплуатантов - прекрасная. Сначала тоже на ардуине, моторах и самопальной механике лепили, потом нашли такую штуку, ардуину выкинули и сделали все прямо на этой фиговине. Она сама ловит старт станка по модулю фотосенсора и крутит вал согласно внутренней программе. Точность по временнЫм интервалам - ~10мс (такова периодичность внутреннего тика).
Волею судеб полгода назад на TMCL программил такую штуку: https://www.trinamic.com/products/drives/pandrives-details/pd28-x-1021/
Очень интересно почитать о применяемых тринамиком технологиях. Ошибку позиционирования в контроллере отлеживают встроенным энкодером на 1024 позиции. Т.е. дают степ, пока энкодер не встанет на заданную позицию. Так же интересно используется энкодер для определения зажатия вала - если его начинает бить и девиация превысила заданную величину, контроллер перестает давать ток на мотор, чтобы не спалить.
Конечно у тринамика в данном mechatronic solution крайне глубокая взаимная интеграция мотора и контроллера, которой на обычных комплектах не добится. Но точность работы по отзывам эксплуатантов - прекрасная. Сначала тоже на ардуине, моторах и самопальной механике лепили, потом нашли такую штуку, ардуину выкинули и сделали все прямо на этой фиговине. Она сама ловит старт станка по модулю фотосенсора и крутит вал согласно внутренней программе. Точность по временнЫм интервалам - ~10мс (такова периодичность внутреннего тика).
Не, ну нам так не жить :) Рано заморачиваться пока с энкодером, хотя понятно, что только с его использованием можно уверенно утверждать, что позиционирование успешно. Я настолько далеко пока не заглядываю - для начала проверю, как есть - возможно, это и устроит, микронная точность не нужна, тут важнее - разжиться хорошим редуктором (хотя видел, что подобные проекты и на шкиво-ременной передаче делают - вот по кому энкодер плачет) - а там - будем посмотреть.
Возможно, будет за глаза и шкиво-ременной передачи - живут же люди как-то с этим. Пока ничего уверенно утверждать не могу, ибо точность позиционирования - самая сложная часть проекта, по сути - и эти нюансы, если встанут колом - буду решать позжее. К тому же - мне не на продажу, ответственности на мне за это - никакой, код выложен (да мало ли мусорного кода на гитхабе - чем мой хуже? :) ) - кому надо, тот, если что - допилит.
В таком вот примерно разрезе.
Сделал экраны настроек передаточного числа, кол-ва шагов на оборот двигателя, режима микрошага - теперь мона без перезакачки прошивки это дело менять.
Собственно, осталось два экрана - и можно подключать шаговый и ужасаться, как оно не работает. Ну или - работает, но не так, как надо :)
Как доделаю экранчики - будут фотки, со страшными макетными проводами и колхозом :)
Вот готовая, без геморроя электронного https://www.avito.ru/moskva/remont_i_stroitelstvo/golovka_delitelnaya_1529899090 с настоящими стальными шестернями, с монолитным стальным корпусом, произведение прошлого века, когда делали на долго, когда не экономили металл, когда не делали одноразовых вещей.
Вот готовая, без геморроя электронного https://www.avito.ru/moskva/remont_i_stroitelstvo/golovka_delitelnaya_1529899090 с настоящими стальными шестернями, с монолитным стальным корпусом, произведение прошлого века, когда делали на долго, когда не экономили металл, когда не делали одноразовых вещей.
На авито, да за такую цену - кидалово 200%. Поверьте на слово. Или - убитая напрочь. Но скорее - первое. Я в чудеса не верю, сколько раз раскусывал кидал с авито - не сосчитать.
И да, я знаю, что есть делительные головки без электроники. Но мы на форуме по Ардуино, и тема в точности соответствует тематике форума, не находите? На чипмейкере я тоже зарегистрирован, и если бы шла речь о подобной указанной вами делительной головке - я бы спросил именно там. Ну или на директлоте посмотрел, там надёжнее в 100 раз покупать, чем на авито.
И механической со временем разживусь, она тоже лишней не будет. И с электроникой - тоже найдёт применение, уж поверьте.
З.Ы. Потом: не каждая делительная головка встанет на "школьный" фрезерный - тут важен размер. Поэтому люди и заморачиваются - ибо нет ничего за вменяемые деньги, а школьных станков у народа - пока ещё хватает. До взрослых станков я ещё не дорос, так что ж - теперь без делительной головки страдать? Или - бросить всё, и купить за под_сотню_тысяч б/у взрослый фрезер? Это я к тому, что всё надо рассматривать в комлексе, а не просто "вот пойди - и купи делительную головку". Забыли, как минимум, про хобби - мне в свободное время интересно изучать то, с чем ещё плотно не работал.
И школьные токарный с фрезерным - тоже для меня хобби пока: впулил сотню тысяч, ещё по долгам не расплатился даже. Суровые взрослые игрушки :)
На авито, да за такую цену - кидалово 200%. Поверьте на слово. Или - убитая напрочь......
Как головку убить напрочь, не понимаю.
Легко: неправильное хранение, и всё. Потом обеспечено кучу секса с её восстановлением. Некоторые ещё гвозди ровняют на них, не иначе. Всякое бывает, короче - б/у всегда лотерея.
2. Ну FPS там и правда не ахти, без ухищрений, о которых вы говорите. Насчёт увеличения скорости вывода - согласен, но - мне ехать, а не шашечки, и та же UTFT устраивает более чем, да и наработок много под неё, включая русские шрифты и поддержку UTF-8 при выводе. Так что мои высказывания по поводу FPS - это скорее так - поныть немного :)
Не совсем понимаю позицию, когда объявляется тема Делительная головка на Arduino Mega , то есть тема о согдании некоего механического устройства, и при этом заявляется принцип "мне ехать, а не шашечки", то есть хочется создать свое некое механическое устройство, работающее с некоторой скоростью и точностью - зачем упираться в поддержку UTF-8 и продумывать, как организовать экраны деления по частям и градусам, когда нет ни прототипа самого механического устройства, ни программы по которой оно будет работать?
ни программы по которой оно будет работать?
Программа - как раз и пишется, для управления шаговиком. UTF-8 - потому что правильно и кошерно, никто ни во что не упирается, работа с UTF-8 давно отлажена (впрочем, мы никогда внимательно не читаем, да? Мы же писатель, а не читатель, блин).
Механика будет позже (может, даже через два-три года), более того - механика может быть любой, ибо электроника умеет настраиваться - и передаточные числа, и параметры движка. Далее объяснять очевидное - неинтересно, тем более - цели не было как-то так по особому выставить свою позицию, как было описано:
Не совсем понимаю позицию
Тема соответствует тематике форума по электронике? Соответствует, ибо про электронику. Вопрос закрыт, тем более, что с вами о чём либо дискутировать - нет ни малейшего желания. Надеялся, что пройдете мимо, но, видимо, не судьба. Осталось в теме дождаться архата и логика - и всё, её можно просто бросать.
Подключил поддержку ёмкостной клавиатуры MPR121 на I2C - теперь можно вводить значения и с неё. По желанию - выключается из прошивки, полностью. Клавиши назначаются как хошь, т.е. любой площадке клавиатуры можно в настройках прошивки указать свой код клавиши, 0-9. Оставшиеся две клавиши - используются как очистка поля ввода (DELETE или RESET, как угодно) - и очистка последнего введенного символа - BACKSPACE.
Самое сложное видимо будет сделать механику, а делительная мне потребовалась единственный раз, когда делал колготочные вязальные )))
Самое сложное видимо будет сделать механику, а делительная мне потребовалась единственный раз, когда делал колготочные вязальные )))
Абсолютно с Вами согласен. Делительная головка в домашнем хозяйстве, не является предметом первой необходимости. У меня упрощенный вариант, сделан из Индийского поворотного стола GARMIN 75 ММ и токарного патрона на 80 ММ. Для всех практических применений, вполне достаточно. Но в основном лежит на полке, и если раз в год достаю, то это хорошо. На изготовление ушло пару дней. А если-бы сначала к ней Мегу пристраивать, то вряд-ли бы она появилась. Сначала-кнопки, а потом захочется голосовой ввод, типа:" по щучьему велению, по моему хотению, нарежь мне головка шестеренку фельдеперсовую, косозубую, а размеры возьми на сервере производителя".
Конечно насчет прецизионности, говорить не стоит, но зато получилось достаточно бюджетно, и на стол НГФ хорошо вписывается.https://www.chipmaker.ru/topic/103642/page__view__findpost__p__2227037
Программа - как раз и пишется, для управления шаговиком.
Я это понимаю! Я только не понимаю зачем так много уделять внимания тому что уже можешь, и на два-три года отодвигать решение того чего не знаешь и не можешь!
Я посмотрел то что ты выложил, и у меня создалось такое впечатление что главной твоей задачей в этом проекте являются различные менюшки экрана (шашечки), а вот "ехать", то есть программная реализация процесса управления шаговиком делительной головки, для тебя второстепенны!
Тема соответствует тематике форума по электронике?
Она бы была по электронике, если бы ты хоть какую схемку нарисовал, а пока она только про программирование менюшек на TFT дисплейчике, и подключение энкодера с двумя кнопками.
Лучше все-же маханический аналог самопал сделать. Делительная головка должна держать угол. Для этого ШД должен держать плоскость. Или так https://www.chipmaker.ru/topic/168233/
https://www.chipmaker.ru/topic/78374/
Самое сложное видимо будет сделать механику, а делительная мне потребовалась единственный раз, когда делал колготочные вязальные )))
Абсолютно с Вами согласен. Делительная головка в домашнем хозяйстве, не является предметом первой необходимости. У меня упрощенный вариант, сделан из Индийского поворотного стола GARMIN 75 ММ и токарного патрона на 80 ММ. Для всех практических применений, вполне достаточно. Но в основном лежит на полке, и если раз в год достаю, то это хорошо. На изготовление ушло пару дней. А если-бы сначала к ней Мегу пристраивать, то вряд-ли бы она появилась. Сначала-кнопки, а потом захочется голосовой ввод, типа:" по щучьему велению, по моему хотению, нарежь мне головка шестеренку фельдеперсовую, косозубую, а размеры возьми на сервере производителя".
Конечно насчет прецизионности, говорить не стоит, но зато получилось достаточно бюджетно, и на стол НГФ хорошо вписывается.https://www.chipmaker.ru/topic/103642/page__view__findpost__p__2227037
Во, спасибо, интересно. Насчёт частоты использования - совершенно согласен. Но когда надо - что называется - вынь да положь. Поэтому заранее и озадачился вопросом ;)
Ок, закрываем тему, вижу, что не к месту.