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

Написание Скриптов для Altium

В продолжение темы Оформление обозначений Микросхем по ГОСТ

 

[sCIP]

 

Решил написать скрипт по образу вашего.

{На дельфи никогда не писал, но это не важно ...}

1. Скрипт для помещения на поле чертежа (Обычно лист A3..A1) перечня элементов по ЕСКД

 

Идея следующая:

1. Получаем размеры листа.

2. Определяем количество и типы компонентов, если что не понятно выводим запрос.

3. Строим перечень в виде, прямоугольников, внутри которых забит необходимый текст

Пример готового файла я приложил.

Да, условие - обратите внимание у всех элементов на ехеме есть параметр "ТУ" там забит децимальный номер для заказа элемента.

 

Информацию по написанию беру из документа "TR0139 Scematic API Reference.pdf"

 

"Извините тем наплодил - инет очень сильно тормозит"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В продолжение темы Оформление обозначений Микросхем по ГОСТ

 

 

 

Решил написать скрипт по образу вашего.

{На дельфи никогда не писал, но это не важно ...}

1. Скрипт для помещения на поле чертежа (Обычно лист A3..A1) перечня элементов по ЕСКД

 

Идея следующая:

1. Получаем размеры листа.

2. Определяем количество и типы компонентов, если что не понятно выводим запрос.

3. Строим перечень в виде, прямоугольников, внутри которых забит необходимый текст

Пример готового файла я приложил.

Да, условие - обратите внимание у всех элементов на ехеме есть параметр "ТУ" там забит децимальный номер для заказа элемента.

 

Информацию по написанию беру из документа "TR0139 Scematic API Reference.pdf"

 

"Извините тем наплодил - инет очень сильно тормозит"

Между прочим это уже третий пост с одним вопросом, а прикрепленного файла нет. Вместо того чтобы размножать пост, воспользуйтесь его редактированием.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В продолжение темы Оформление обозначений Микросхем по ГОСТ

Решил написать скрипт по образу вашего.

 

1. Скрипт для помещения на поле чертежа (Обычно лист A3..A1) перечня элементов по ЕСКД

 

Пример готового файла я приложил.

 

Дык... А где файл-то? И какие проблемы возникли при его написании? А то в теме указано "проблемы", а вопросов-то и нет :(

Может быть, Вы после выбора файла кнопкой "Обзор" забываете перед отправлением поста нажать кнопку "Добавить файл"? И поэтому пост улетает без прикрепления?

 

 

Что касается перечня элементов, то мы решили эту проблему другим способом.

У нас перечень идет в отдельном файле (схемы очень большие, на листе разместить невозможно).

Я сделал шаблон в Excel, в который Альтиум передает перечень элементов. В шаблоне я написал макрос, который по нажатию кнопочки преобразует этот перечень к виду, соответствующему ГОСТ. Остается только скопировать этот текст и переместить его в форматку Word. Там выполняем минимум редактирования (наводим красоту), и перечень готов.

:)

Изменено пользователем Gennaj

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно получить у Вас шаблон и макрос для Excel, тогда я попробую сделать что-то похожее для Orcad и нашего вида перечня.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно получить у Вас шаблон и макрос для Excel, тогда я попробую сделать что-то похожее для Orcad и нашего вида перечня.

Я сейчас подал запрос о зачислении в Свои. Как ответят - залью на FTP оба шаблона - и Excel с макросом и Word с форматкой и выдержки из моей "методички" про заполнение полей свойств.

Изменено пользователем Gennaj

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я сейчас подал запрос о зачислении в Свои. Как ответят - залью на FTP оба шаблона - и Excel с макросом и Word с форматкой и выдержки из моей "методички" про заполнение полей свойств.

Ходатойствую о зачислении

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дык не здесь ходатайствовать надо, а где заявки в "Свои" подают. Там место для петиций.

Идем хором голосовать. Я первый. Явка обязательна. ;)

Злостный оффтоп, я не виноват ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дык не здесь ходатайствовать надо, а где заявки в "Свои" подают. Там место для петиций.

Идем хором голосовать. Я первый. Явка обязательна. ;)

Злостный оффтоп, я не виноват ...

 

Спасибо! С такой характеристикой раньше в партию принимали :lol:

 

А теперь серьезный вопрос: что-то я не пойму, в какую папку поместить на ftp архив, в котором будет: шаблон excel с макросом для обработки перечня, шаблон word (просто форматка по ГОСТ с тремя листами) и "методичку по Altium", которую я писал для наших разработчиков?

Вроде бы документация, но вместе с программой (макросом)... И все должно быть в одном месте, иначе будет путаница...

Еще вопрос - в правилах обращения с ftp указано, что желательно сопровождать файл комментарием readme. Если я кладу архив, то коментарий прятать в архив, или класть отдельно от него???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде разобрался с ftp

Выложил здесь:

ftp://ftp.electronix.ru/upload/PCB/Altium/

файл BOM_GOST_and_metodichka.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дык... А где файл-то? И какие проблемы возникли при его написании? А то в теме указано "проблемы", а вопросов-то и нет :(

 

Может быть, Вы после выбора файла кнопкой "Обзор" забываете перед отправлением поста нажать кнопку "Добавить файл"? И поэтому пост улетает без прикрепления?

 

Всё очень просто, сначала необратил внимания на размер файла, а потом меня достаточно мгновенно забанили (после 3го сообщения).

Вообщем выкладываю. Это пример оформления, которое требуется получить:

_32.556.010.RAR

 

 

Что касается перечня элементов, то мы решили эту проблему другим способом.

У нас перечень идет в отдельном файле (схемы очень большие, на листе разместить невозможно).

Я сделал шаблон в Excel, в который Альтиум передает перечень элементов. В шаблоне я написал макрос, который по нажатию кнопочки преобразует этот перечень к виду, соответствующему ГОСТ. Остается только скопировать этот текст и переместить его в форматку Word. Там выполняем минимум редактирования (наводим красоту), и перечень готов.

:)

Черезе Exel эту проблемуя решил аналогичным образом, пользуюсь очень доволен.

Но достаточно часто, особенно во время переработки старых схем требуется разместить перечень в поле чертежа. Да и для монтажа при единичных, опытных сборках достаточно удобно и перечень никуда не теряется.

На всякий случай выкладываю форматки А1-А4 и Exel шаблон.

Шаблон сделан немного хитро. В каждом библиотечном элементе есть параметр "ТУ" и "Value"

они обязательно должны быть задействованы при формировании перечня. В итоге перечень будет записан точно по ЕСКД. (Если конечно элементы созданы логично)

Template_for_Altium.rar

 

 

Ну, а теперь делаю ещё один шаг и повисаю.

При написании скрипта завис в самом начале (То, что написал пока выкладывать не буду ибо пока ещё стыдно).

Завис на получении размеров листа.

Пытаюсь пользоваться функцией GetState_SheetSizeX и GetState_SheetSizeY;

примерно так :

Var

max_x, max_y: TCoord;

 

Begin

max_x := GetState_SheetSizeX;

max_y := GetState_SheetSizeY;

 

 

Получаю ошибку Undeclared identifier GetState_SheetSizeX

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообщем выкладываю. Это пример оформления, которое требуется получить...

Мне кажется, что поля свойств заполнены не оптимально. Плюс, есть очепятки :)

Поясняю: на мой взгляд, лучше всего, когда ВСЕ данные, которые должны попасть в перечень, содержаться в схеме. У Вас же, напримре, параметр "точность" (например, 5%), берется непонятно откуда. Плюс, например, резистор R34 в перечне и на схеме имеет разную мощность.

Можно, конечно, не указывать в схеме всех параметров, которые должны попасть в перечень. Но тогда программа, составляющая перечень должна будет обращаться к какой-то базе данных, в которой она будет брать дополнительную информацию. Мне кажется, что лучше, все-таки, абсолютно всю информацию помещать в поля элементов на схеме. Посмотрите, как стандартизовано заполнение полей свойст элементов у нас в организации - ftp://ftp.electronix.ru/upload/PCB/Altium..._metodichka.rar

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

 

Завис на получении размеров листа.

Пытаюсь пользоваться функцией GetState_SheetSizeX и GetState_SheetSizeY;

примерно так :

Var

max_x, max_y: TCoord;

 

Begin

max_x := GetState_SheetSizeX;

max_y := GetState_SheetSizeY;

Получаю ошибку Undeclared identifier GetState_SheetSizeX

Ошибка в том, что Вы пытаетесь использовать функцию получения размеров листа, не указывая, к какому объекту она должна быть применена.

Для начала Вам необходимо организовать переменную типа ISCH_Document и присвоить ей значение "текущий лист". А вот потом уже можно с этим листом работать.

Таким образом, чтобы получить размеры листа, необходимо сделать, например, так, как в приложенном файле. Здесь текст не выкладываю, так как я там включил комментарии на русском языке, и они, почему-то, отказались нормально здесь отображаться :(

Кстати, я, почему-то не нашел среди свойств и методов объекта ISCH_Document функций GetState_SheetSizeX и GetState_SheetSizeY.

 

Как Вы планируете строить перечень дальше?

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

 

P.S. Да, я не вполне понял насчет Вашего экселевского перечня. Как вы группируете компоненты? У нас группировку выполняет макрос в экселе, а у Вас, похоже, никакого макроса нет...

Sheet_size.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

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