Введение

Целесообразно использовать обработку детали на станках с ЧПУ в следующих случаях:

  • Когда детали или изделия имеют сложные криволинейные поверхности и требуется их мелкосерийный или серийный выпуск

  • Когда необходим серийный выпуск деталей обработка которых ведётся с большим количеством технологических переходов и операций

  • Когда необходим мелкосерийный но регулярный выпуск деталей или изделий (от 30...50шт. в месяц), имеющих в своей конструкции признаки упомянутые в предыдущих пунктах, и велика вероятность того, что конструктивно эти детали могут претерпевать изменения. В этом случае мы можем оперативно вносить соответствующие изменение в управляющие программы обработки, без снижения общей производительности выполняемых работ.

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

Классификация способов управления станком

Ручное управление

,

Автоматы

и

полуавтоматы

ЧПУ

ПУ

ЦПУ

NC ЧПУ)

HNC

SNC

CNC

DNC


Станки автоматы и полуавтоматы.

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

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

Станки с ЧПУ

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

П – управляющая программа.

БУ – блок управления. Его назначение – преобразовывать соответствующие физические воздействия в электрические командные импульсы или потенциалы. Он также выполняет функции сопоставления задания с информацией датчика перемещений, расшифровывает введенную информант и др. Элемент БУ является обобщающим понятием различных устройств программного управления: дешифратора, интерполятора, счетчика и др. в зависимости от принятой схемы реализации командных воздействий. Эти устройства предназначены для переработки управляющей информа­ции и выполнения отдельных функций автоматического управления на ос­нове использования электронных приборов.

У – усилитель. В случае необходимости он поднимает полученный электрический потенциал до необходимого уровня, обеспечивающего на­дежное управляющее воздействие.

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

РО – рабочий орган. Фактически реализует командные воздействия, являясь целевым управляемым органом станка.

ДП – датчик перемещения. Его назначение - регистрировать факти­ческое перемещение рабочего органа станка. Наличие ДП определяет зам­кнутую систему программного управления, в отличие от более простой, открытой системы программного управления, у которой отсутствует этот элемент. Он обобщает различные системы путевого контроля, приме­няемые в замкнутых системах ЧПУ в качестве устройств обратной связи. В эти системы входят датчики, измеряющие величины фактического пере­мещения рабочего органа или положения управляемого объекта, и при­боры формирования необходимого выходного сигнала.

Различают следующие виды программного управления:

ПУ – программное управление – управление станком по детерминированной программе;

ЦПУ – цикловое программное управление – управление циклами перемещений или режимами обработки по программе с заданием величины параметров на путевых переключателях или других измерительных преобразователях;

NC (ЧПУ) – числовое программное управление – числовое программное управление (Numerical control) – управление обработкой на станке по программе, заданной в алфавитно-цифровом коде;

HNC – разновидность ЧПУ(Hand NC) с ручным заданием программы с пульта устройства.

SNC – разновидность ЧПУ(Speicher numerical control), имеющая память для хранения всей управляющей программы

CNC – автономное управление станком с ЧПУ(Computer numerical control), содержащие ЭВМ или процессор

DNC – управление группой станков от общей ЭВМ(Direct numerical control), осуществляющее хранение программ и распределение их по запросам от устройств управление станков ( у станков могут быть установлены устройства типов NC, SNC, CNC).

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

Ко второй группе относятся устройства с переменной структурой. Их основные алгоритмы работы задаются программно и могут изменяться для различных применений. Эти устройства строятся на основе микроЭВМ либо микропроцессоров (класса CNC). В устройствах класса CNC и SNC можно формировать нестандартные циклы обработки, что существенно упрощает подготовку и редактирование программы.

Разрабатываются самонастраивающиеся (адаптивные) системы про­граммного управления. В открытой системе имеется только один поток информации — от элемента «ввод программы» к рабочему органу; в замкнутой системе, кроме того, имеется дополнительная корректирующая информация по линии обратной связи о фактическом перемещении рабочего органа. В идеальном случае желательно также иметь информацию о факторах случайного характера, связанных с конкретным состоянием режущего инструмента, отклонениях физических свойств заготовки от заданных, температурных колебаний в процессе резания, а также о различных силовых и других воздействиях на систему. Система программного управления, в которой, помимо основного, имеется ряд дополнительных потоков информации, позволяющих корректировать процесс обработки с учетом маловероятных воздействий, называется самонастраивающейся.

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

Задачей дипломного проектирования является разработка программного обеспечения. Разрабатываемая программа производит коррекцию, с помощью которой скорость движения рабочего органа (пиноли) токарного станка поддерживается в заданных рамках исключая негативное влияние, оказываемое изменением плотности рабочей жидкости гидропривода.

Блок-схема САУ

З – управляющая программа.

МП – Микропроцессор. Он выполняет функции сопоставления задания с информацией ГЭПП и вырабатывает управляющий сигнал, который преобразуется в аналоговый с помощью ЦАП и идет на усилитель.

У – усилитель

ГП – гидропривод.

РО – рабочий орган.

ГЭПП – гидроэлектрический преобразователь плотности. Он преобразует плотность рабочей жидкости в электрический сигнал. Сигнал преобразуется из аналогового в цифровой с помощью АЦП.

Программное обеспечение разработано на языке Си. При разработке программного обеспечения, естественно, должны использоваться все современные элементы интерфейса «человек-ЭВМ» (окна, контекстные меню, контекстные справки, графические образы, мониторинг времени и т.д.) и поддерживаться все существующие типы устройств ввода-вывода. А также использование одинакового интерфейса для различных станков значительно облегчает подготовку и повышает эффективность использования обслуживающего персонала (технологов, операторов и наладчиков). Всё это дает возможность изменять(модернизировать) программу в условиях цеха.

Характеристики языка программирования Си

В связи с тем, что сегодня уровень сложности программного обеспечения очень высок, разработка приложений Windows с использованием только какого-либо языка программирования (например, языка C) значительно затрудняется. Программист должен затратить массу времени на решение стандартных задач по созданию многооконного интерфейса. Реализация технологии связывания и встраивания объектов - OLE - потребует от программиста еще более сложной работы.

Чтобы облегчить работу программиста практически все современные компиляторы с языка C++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных.

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

Подобные средства автоматизированного создания приложений включены в компилятор Microsoft Visual C++ и называются MFC AppWizard. Заполнив несколько диалоговых панелей, можно указать характеристики приложения и получить его тексты, снабженные обширными комментариями. MFC AppWizard позволяет создавать однооконные и многооконные приложения, а также приложения, не имеющие главного окна, -вместо него используется диалоговая панель. Можно также включить поддержку технологии OLE, баз данных, справочной системы.

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

Нужно отметить, что MFC AppWizard создает тексты приложений только с использованием библиотеки классов MFC (Microsoft Foundation Class library). Поэтому только изучив язык C++ и библиотеку MFC, можно пользоваться средствами автоматизированной разработки и создавать свои приложения в кратчайшие сроки.

MFC – это базовый набор (библиотека) классов, написанных на языке С++ и предназначенных для упрощения и ускорения процесса программирования под Windows. Перед изучением библиотеки MFC и ее использованием для создания Windows-приложений, следует вспомнить, как работает сама Windows и каковы принципы взаимодействия программ с ней, какова структура типичной Windows-программы.

Программная среда Windows

Рассмотрим наиболее важные моменты работы Windows и принципы взаимодействия программ с ней.

Интерфейс вызовов функций в Windows

Благодаря данному интерфейсу доступ к системным ресурсам осуществляется через целый рад системных функций. Совокупность таких функций называется прикладным программным интерфейсом, или API (Application Programming Interfase). Для взаимодействия с Windows приложение запрашивает функции API, с помощью которых реализуются все необходимые системные действия, такие как выделение памяти, вывод на экран, создание окон и т.п.

Библиотека MFC инкапсулирует многие функции API. Хотя программам и разрешено обращаться к ним напрямую, все же чаще это будет выполняться через соответствующие функции-члены. Как правило, функции-члены либо аналогичны функциям API, либо непосредственно обращаются к нужной части интерфейса.

Библиотеки динамической загрузки (DLL)

Поскольку API состоит из большого числа функций, может сложиться впечатление, что при компиляции каждой программы, написанной для Windows, к ней подключается код довольно значительного объема. В действительности это не так. Функции API содержатся в библиотеках динамической загрузки (Dynamic Link Libraries, или DLL), которые загружаются в память только в тот момент, когда к ним происходит обращение, т.е. при выполнении программы. Рассмотрим, как осуществляется механизм динамической загрузки.

Динамическая загрузка обеспечивает ряд существенных преимуществ. Во-первых, поскольку практически все программы используют API-функции, то благодаря DLL-библиотекам существенно экономится дисковое пространство, которое в противном случае занималось бы большим количеством повторяющегося кода, содержащегося в каждом из исполняемых файлов. Во-вторых, изменения и улучшения в Windows-приложениях сводятся к обновлению только содержимого DLL-библиотек. Уже существующие тексты программ не требуют перекомпиляции.

Win16 или Win32

В настоящее время широко распространены две версии API. Первая называется Win16 и представляет собой 16-разрядную версию, используемую в Windows 3.1. Вторая, 32-разрядная версия, называется Win32 и используется в Windows 95 и Windows NT. Win32 является надмножеством для Win16 (т.е. фактически включает в себя этот интерфейс), так как большинство функций имеет то же название и применяется аналогичным образом. Однако, будучи в принципе похожими, оба интерфейса все же отличаются друг от друга. Win32 поддерживает 32-разрядную линейную адресацию, тогда как Win16 работает только с 16-разрядной сегментированной моделью памяти. Это привело к тому, что некоторые функции были модифицированы таким образом, чтобы принимать 32-разрядные аргументы и возвращать 32-разрядные значения. Часть из них пришлось изменить с учетом 32-разрядной архитектуры. Была реализована поддержка потоковой многозадачности, новых элементов интерфейса и прочих нововведений Windows.

Так как Win32 поддерживает полностью 32-разрядную адресацию, то логично, что целые типы данных (intergers) также объявлены 32-разрядными. Это означает, что переменные типа int и unsignerd будут иметь длину 32 бита, а не 16, как в Windows 3.1. Если же необходимо использовать переменную или константу длиной 16 бит, они должны быть объявлены как short. (дальше будет показано, что для этих типов определены независимые typedef-имена.) Следовательно, при переносе программного кода из 16-разрядной среды необходимо убедиться в правильности использования целочисленных элементов, которые автоматически будут расширены до 32 битов, что целочисленных элементов, которые автоматически будут расширены до 32 битов, что может привести к появлению побочных эффектов.

Интерфейс GDI

Одним из подмножеств API является GDI (Graphics Device Interfase – интерфейс графического устройства). GDI – это та часть Windows, которая обеспечивает поддержку аппаратно-независимой графики. Благодаря функциям GDI Windows-приложение может выполняться на самых различных компьютерах.

Типы данных в Windows

В Windows-программах вообще (и в использующих библиотеку MFC в частности) не слишком широко применяются стандартные типы данных из С или С++, такие как int или char*. Вместо них используются типы данных, определенные в различных библиотечных (header) файлах. Наиболее часто используемыми типами являются HANDLE, HWND, BYTE, WORD, DWORD, UNIT, LONG, BOOL, LPSTR и LPCSTR. Тип HANDLE обозначает 32-разрядное целое, используемое в качестве дескриптора. Есть несколько похожих типов данных, но все они имеют ту же длину, что и HANDLE, и начинаются с литеры Н. Дескриптор – это просто число, определяющее некоторый ресурс. Например, тип HWND обозначает 32-разрядное целое – дескриптор окна. В программах, использующих библиотеку MFC, дескрипторы применяются не столь широко, как это имеет место в традиционных программах. Тип BYTE обозначает 8-разрядное беззнаковое символьное значение, тип WORD – 16-разрядное беззнаковое короткое целое, тип DWORD – беззнаковое длинное целое, тип UNIT - беззнаковое 32-разрядное целое. Тип LONG эквивалентен типу long. Тип BOOL обозначает целое и используется, когда значение может быть либо истинным, либо ложным. Тип LPSTR определяет указатель на строку, а LPCSTR – константный (const) указатель на строку.

15