Вторая жизнь тискам для мастерской

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

Начал выбирать из того что доступно по вменяемой цене на рынке. По факту все сводится к такому варианту исполнения тисков:

XOHWKP2q7Reb2079bb31_1441634122.jpeg_mobile          2102_1

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

Недостатки таких тисков:

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

  • Губки как и сами тиски сделаны из обычной не закаленной стали (Ст.3), что в свою очередь говорит от том что при небольших ударах они могут сильно деформироваться. Но если с материалом изготовления самих тисков то еще как не шло, но губки будут быстро стираться. Будет появляться зазор и вмятины, что вообще не хорошо.

  • Ходовой винт изготовлен из обычной строительной шпильки, качество которой очень страдает. Это я еще не говорю за конструктивное исполнение гайки…. В результате после определенного времени эксплуатации появится люфт, выбрать который будет нельзя.

Можно было бы еще критиковать, но не эту цель я преследую!  Это просто трезвый взгляд на то какое сейчас качество выпускаемой продукции. Так что обращаюсь к владельцам похожих тисков, не обижайтесь.

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

Читать далее »

Вводной курс AVR. Hello World !!!

Создание устройств подразумевает не только подключение микроконтроллера и необходимых компонентов обвязки  но и написание программы. Если с подключением МК и его выбором мы уже ознакомились, то с написанием программы будем разбираться. В любом языке программирования (в нашем случае Си)  есть такое понятие как первая программа, что-то типа «Hello World». Она поможет получить представление о составлении структуры программы и синтаксисе языка.  Для написания программы можно пользоваться абсолютно любой, удобной для вас, средой разработки, в проектах буду использовать AVR Studio 6. О том как создать проект и получить прошивку написал в статье про AVR Studio.

Постановка задачи:

Нужно сделать так, чтобы микроконтроллер мигал светодиодом с частотой 1 Гц. Это будет просто в написании и наглядно как пример. Согласно составленному алгоритму и будет выполняться программа.

Для работы с портами микроконтроллера — подключаем библиотеку для ввода/вывода

Так как нам нужно мигать светодиодом с частотой 1 Гц (раз в секунду) — подключаем библиотеку задержек

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

В цикле while(1): выставляем на ножке микроконтроллера лог.1 (тем самым включая светодиод), после ждем 1 секунду и выставляем на ножке микроконтроллера лог.0 (тем самым выключая светодиод), опять ждем 1 секунду и все повторяется заново.

Программный код:

Схема нашего устройства :

 

Led_blink_shm

Читать далее »

Отладочный модуль для ATmega х8

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

maketnaya_plata2

Из личного опыта могу сказать, что из-за частой смены микросхем фиксирующие выводы расшатываются и контакт уже не тот. Ну а при отладке отсутствие контакта, это лишний повод подумать что есть баг в программе или еще что-то не учтено. В итоге для ускорения и упрощения работы удобно собирать и тестировать устройство на уже готовой платформе c подключенным к ней микроконтроллером. Так резко снижается риск неправильного подключения МК, исчезает наличие плохого контакта и закороченных портов ввода-вывода. В результате получится небольшой модуль, который можно использовать где угодно и с чем угодно. Достаточно подключить необходимые порты к датчикам или другим модулям и написать программку управления.

Модуль для ATmega х8:

 IMG_7297

Для удобства все выводы микроконтроллера и их назначения уже подписаны на плате. Это упростит работу с незнакомым микроконтроллером. Все выводы подведены к рядам пинов, которые потом можно подсоединять к небольшим модулям и сборкам. Для программирования МК достаточно подключить питание и программатор к линиям программирования. Дальше прошиваем МК и можем приступать к процессу отладки. Использовать данный модуль можно с микроконтроллерами:  ATmega8, ATmega48, ATmega88, ATmega168, ATmega328.

 IMG_7300

Читать далее »

Fuse-bits или вторая жизнь микроконтроллера

Одна из самых частых проблем связанных с блокировкой микроконтроллера — неправильно установленные во время программирования fuse — биты. Довольно актуальной темой остается установка битов отвечающих за способ тактирования и частоту работы микроконтроллера. При повторении или разработке проекта, как правило, приходится менять дефолтную частоту на другую. Но что делать если  все-таки выставили неправильно? Для этого случая есть всевозможные программаторы и модули. Но это все дополнительные затраты и время, которого как всегда не хватает…

В зависимости от корпуса микроконтроллера, варьируется и количество доступных для программирования  fuse — битов. Их конфигурация и определяет, источник тактовых импульсов и частоту работы МК.

CKSEL0-3  —  отвечают за выбор частоты и источника тактового сигнала

CKOPT  — служит для корректировки амплитуды колебаний на выходе с карцевого резонатора

SUT0-1  —  отвечают за выбор времени старта микроконтроллера (4ms — 65ms)

SKDIV8  —  выполняет деления частоты на 8 (При частоте кварца 8 MHz, получим 1 MHz)

Как уже говорилось, микроконтроллер может работать как от внутреннего кварцевого резонатора, так и от внешнего. При выставлении fuse — битов — это следует учитывать ! По дефолту (новый) микроконтроллер работает от внутреннего кварца на частоте 1 MHz. Ниже представлено описание конфигураций для ATmega8.

Конфигурация фьюз-битов для внешнего кварца:

Если есть необходимость точно измерять определенные промежутки времени, лучше использовать внешний кварцевый резонатор. Он имеет большую точность и помехоустойчивость, в следствии уход частоты (от заявленной) будет небольшой.

fuse_crystal

Временные задержки для старта микроконтроллера:

Задержки варьируются в диапазоне 4ms — 65ms, за счет установки битов CKSEL0 и  SUT0-1. По сути они необходимы для того, чтобы после подачи питания, МК стартовал не сразу, а через некоторое время. Так что можно смело ставить 65 ms, будет надежнее.

fuse_crystal_time

Конфигурация фьюз-битов для внутреннего кварца:

Количество выводов в МК не безгранично, так что экономить приходиться на всем. Использование внутреннего кварца даст в наше распоряжение еще две дополнительные линии порта ввода/вывода. Но несмотря на это, температурный дрейф и меньшая точность по сравнению с внешним кварцем, будут иметь место.

fuse_rc2

При построении устройств где нет необходимости в высокой частоте, применяют низкочастотные кварцы. Часовой кварц работает на частоте 32,768 kHz, удобно при работе в асинхронном режиме таймера. Упрощается построение часов, работа с отсчетом времени и тд.  Для подключения низкочастотного внешнего кварцевого резонатора необходимо установить биты: 

• CKSEL3…0  =  1001

Для подключения кварца к внутренним конденсаторам, необходимо установить бит CKOPT. Конденсаторы имеют емкость 36 pf.

Также, в качестве источника тактовых импульсов, можно использовать RC- цепочку.

fuse_rc

 

Следует помнить!

При выставлении Fuse-битов, не ленитесь и открывайте даташит ! Сверьтесь,  убедитесь что выставили все правильно и только тогда прошивайте МК. Порой залочить микроконтроллер гораздо проще, чем потом восстановить его в рабочий режим.

Небольшое отступление, вторая жизнь микроконтроллера…

Если случилось так, что fuse — биты уже выставлены и на последующий запрос МК уже не отвечает. Следует внимательно посмотреть на поставленные ранее конфиги, и подбирать источник тактирования. Как вариант, можно поступить следующим образом: использовать генератор в качестве источника тактирования микроконтроллера, это поможет прочитать МК и заменить  fuse — биты. Вопрос в том где взять генератор — уже решен. На небольшой отладочной плате собрал генератор на базе микроконтроллера ATmega8. МК работает от внутреннего кварца, так что из обвязки практически ничего не надо.

IMG_7280

Читать далее »

Вводной курс AVR. Подключение МК

Начало работы с микроконтроллером невозможно без правильного подключения. Собственно вариантов может быть много, в зависимости от того что будет использоваться а что нет. Теперь немного слов о таких вещах как питание МК, внешний кварц, Aref и тд. Как выяснилось эта тема для многих не до конца понятна, значит надо разобраться.

Питание МК

Питание микроконтроллера, как правило, лежит в пределах 4,5 – 5,5 В. Есть версии с пониженным энергопотреблением (обозначаются в конце “ L”) где диапазон напряжений составляет 2,7 – 5 В, но следует также учесть что быстродействие у них ниже. Например, в подсемействе XMega несмотря на высокие вычислительные способности и большое количество периферии напряжение питания составляет 1,8 – 3,6В. При построении своего девайса это следует учитывать, и следить чтобы напряжение не выходило за эти границы. Для запитки МК напряжение подается на выводы Vcc и Gnd соответственно. Может также быть что выводов Vcc и Gnd будет несколько, тогда их нужно объединить!

 

питание_подключение

Подключение кварцевого резонатора

В корпусе есть встроенная RC- цепочка, которая позволяет работать без подключения внешнего кварца, и служит для тактирования МК. Внешний кварц имеет большую стабильность по сравнению с RC – цепочкой и меньший температурный дрейф. Частота тактирования у AVR может достигать до 16 MHz. Подключается внешний кварц или цепочка к выводам XTAL1 и XTAL2.

Пример схемы подключения внешнего кварца и RC- цепочки

кварц_подключение

 

Ну если с подключением кварцевого резонатора вопросов возникнуть не должно, то с подключением внешнего генератора и RC – цепочки есть небольшая особенность. Подключать нужно к выводу XTAL1, при этом вывод XTAL2 остается не задействованным.

цепочка_подключение

Читать далее »