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

А как в CAM350 сделать следующее...

Добрый день.

Подскажите, пожалуйста, как в САМ-е реализовать поиск компонента с помощью скрипта ?

(по позиционному обозначению или по типу компонента).

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


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

Добрый день.

Подскажите, пожалуйста, как в САМ-е реализовать поиск компонента с помощью скрипта ?

(по позиционному обозначению или по типу компонента).

 

Т.е. Вы хотите в форме запроса забить например R2 и чтобы макрос показал место расположения этого компонента на слое?

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


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

Добрый день.

Подскажите, пожалуйста, как в САМ-е реализовать поиск компонента с помощью скрипта ?

(по позиционному обозначению или по типу компонента).

Если у вас в CAM350 загружен формат Gerber, то никак.

Если импортировали проект платы, то скрипт не нужен: Info -> Find -> Part

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


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

To vicnic:

Спасибо, этот вариант я знаю. Не годится.

Нужен поиск скриптом.

 

To Mef:

У меня в САМ-е компоненты.

Мне нужен поиск компонента по позиционному обозначению, или по типу компонента.

И в ответе хочу получить координаты этого компонента или подтверждение,

что в указанных координатах находятся искомые компоненты.

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


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

To Mef:

У меня в САМ-е компоненты.

Мне нужен поиск компонента по позиционному обозначению, или по типу компонента.

И в ответе хочу получить координаты этого компонента или подтверждение,

что в указанных координатах находятся искомые компоненты.

 

Я бы сделал так:

1) Создаешь отчет (записываешь в файл на диск) по все компонентам проекта (команда Info > Report > Centroid)

2) От туда извлекаешь данные по: Devname, Refds, Side, и координаты центра компонента (Centroid )

3) В форме выскакивает запрос типа: "Введите обозначение компонента", там вводим либо по Device Name либо по Refdes.

4) Пробегаем по всему списку компонентов, находим нужный и выводим его расположение в плате на экран с сообщением "Компонент такой то найден, координаты такие то"

 

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


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

Я бы сделал так:

1) Создаешь отчет (записываешь в файл на диск) по все компонентам проекта (команда Info > Report > Centroid)

2) От туда извлекаешь данные по: Devname, Refds, Side, и координаты центра компонента (Centroid )

3) В форме выскакивает запрос типа: "Введите обозначение компонента", там вводим либо по Device Name либо по Refdes.

4) Пробегаем по всему списку компонентов, находим нужный и выводим его расположение в плате на экран с сообщением "Компонент такой то найден, координаты такие то"

 

Да, спасибо, этот вариант я уже рассматривала.

Хочется сделать, ... как-то попроще.

Понимаю, что все параметры компонентов уже присутствуют в файле.

Вопрос в том, как до них добраться ?

Системных команд нет ли каких-нибудь для извлечения параметров компонентов ?

(у меня есть такое подозрение, что описание языка запросов в САМ-е несколько урезано).

 

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


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

А в чем сложность? Вся инфа в этом файле отчета есть и с ней можно делать все что угодно (у меня почти все макросы построены на считывании данных из различных отчетов).

Хотите читайте данные напрямую из cam-файла (но это изврат). Либо через макрос использовать все ту же команду Info > Find > Part, но Вам она не нравится.

Более простого пути не вижу.

 

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


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

Понимаю, что все параметры компонентов уже присутствуют в файле.

Вопрос в том, как до них добраться ?

Тогда подумайте над выгрузкой информации прямо в среде проектирования, благо большинство сред это позволяют.

Вы результаты работы в каком виде хотите получить: просто текстовый файл или хотите прикрутить какую-то автоматизацию для других программ (этапов)?

 

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


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

Тогда подумайте над выгрузкой информации прямо в среде проектирования, благо большинство сред это позволяют.

можно пару ссылок для примера, хочу понять о чем идет речь. Как это "выгружать информацию прямо в среде проектирования"?

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


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

можно пару ссылок для примера, хочу понять о чем идет речь. Как это "выгружать информацию прямо в среде проектирования"?

Сорри, неправильный предлог поставил. Правильно сказать так: выгружать информацию прямо из среды проектирования

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


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

... выгружать информацию прямо из среды проектирования

Это будет запасной вариант.

Как основной - придется разбирать репорт.

Всем спасибо.

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


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

вот "изврат" - черновик макроса прямого чтения из файла

 

координаты в условных ед. 1 мм=127000

 

 

INPUT "Enter your REFDES", name$

OPEN "DST Demo 2014.cam" FOR INPUT as #1

DO

Line INPUT #1,a$

if MID$(a$, 1,3)="LOC" Then COORD$=MID$(a$, 5,LEN(a$)-4)

if MID$(a$, 1,11)="*REFDES_STR" Then

if MID$(a$, 14,LEN(a$)-14)=name$ then print COORD$

END if

LOOP UNTIL EOF (1) = 1

CLOSE #1

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


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

вот "изврат" - черновик макроса прямого чтения из файла

 

координаты в условных ед. 1 мм=127000

 

 

INPUT "Enter your REFDES", name$

OPEN "DST Demo 2014.cam" FOR INPUT as #1

DO

Line INPUT #1,a$

if MID$(a$, 1,3)="LOC" Then COORD$=MID$(a$, 5,LEN(a$)-4)

if MID$(a$, 1,11)="*REFDES_STR" Then

if MID$(a$, 14,LEN(a$)-14)=name$ then print COORD$

END if

LOOP UNTIL EOF (1) = 1

CLOSE #1

 

Почему я предпочитаю работать с файлом репорта, а не напрямую считывать из файла:

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

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

3) Самое главное! КАМовский макрос в «тяжелых” файлах очень долго ищет информацию (больше минуты было у меня). Поэтому для поиска в самом файле я пользуюсь прогой, написанной на Visual Basic (работает в разы быстрей).

 

 

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


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

Почему я предпочитаю работать с файлом репорта, а не напрямую считывать из файла:

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

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

3) Самое главное! КАМовский макрос в «тяжелых” файлах очень долго ищет информацию (больше минуты было у меня). Поэтому для поиска в самом файле я пользуюсь прогой, написанной на Visual Basic (работает в разы быстрей).

 

Вы во всем правы! Однако, не всегда есть "репорт", например, однажды возникла необходимость формирования файла центров только smd компонентов. И второе в самом макросе можно сохранять файл и в макросе же его удалять и пр...

 

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


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

Однако, не всегда есть "репорт", например, однажды возникла необходимость формирования файла центров только smd компонентов.

Да не всегда. Но если есть репорт, то лучше я туда залезу, чем в исходный файл. А если и полезу, то через прогу на Visual Basic. Например, залезал когда нужно было найти координаты текста на слоях (как оказалось по другому это не сделать), еще использую для чтения данных оставленных после работы других макросов.

 

 

И второе в самом макросе можно сохранять файл и в макросе же его удалять и пр.

Знаю, что можно сохранять, но иногда это крайне нежелательно.

 

Сейчас играюсь со связкой САМ350 + AutomationBox Tools (программа для иммитации нажатия клавиш и управления курсором мыши). Получаешь данные из САМа и заносишь их куда хочешь (в файл или в программу).

 

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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