Глюки Альтиума

Опубликовано в рубрике "Altium Designer", 9 октября, 2011.
Тэги: , , автор:

Давно работаю с этим пакетом, но недавно нужно было сделать платки. Схему нарисовал, плату развел и отдал в производство. Когда плата пришла, заметил несколько багов. Сначала подумал, что это – моя вина, ведь обычно лажаю именно я, а не софт. После разбирательств выяснилось, что виноват не я,  а Альтиум! Я использую последний на сегодняшний день релиз Альтиума.

 

image

Баг номер 1.

Предыстория такая, мне нужны были цельные полигоны. При экспорте, Альтиум их сохраняет как гербер-макрос, а их понимают не все производители (макросы в герберах появились относительно недавно, а производителям новый софт покупать не хочется). К счастью, при экспорте из камтастика есть волшебная галочка, которая призвана решить эту проблему:

image

Работает? Работает! Галочка перевела макросы в векторную заливку. Все хорошо, но:

pcb

Слева – оригинал, справа – то, что натворил Альтиум в процессе экспорта. Ясное дело, что в этом месте производитель не смог выдержать такое маленькое расстояние и получился коротыш.

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

 

Баг номер 2.

Наверняка, вы знаете, что в альтиуме есть part swapping – штука, которая позволяет при разводке микросхем, в которых содержится несколько однотипных элементов выбрать тот, что наиболее удобен для разводки. (к примеру, у вас есть в одном корпусе 4 И-НЕ, вы на схеме нарисовали первый, а удобнее использовать четвертый)

Итак, я нарвался и в этом месте.

Я использовал элементу SN74HC08D из библиотеки TI Logic Gate 2.IntLib, которая поставляется вместе с Альтиумом.  Вот как выглядит таблица свопинга (хотя, ее и смотреть не нужно, ведь я использовал стандартную библиотеку, качество которой должно быть вменяемым):

image

При изменении детали (Part No.), пины перебрасываются на пины с таким-же Pin Name. Получается гибкая система, но… но она безбожно бажит.

Готовы посмеяться?

image

Слева – компонент из библиотеки, справа – после парт свопинга. Заметили как переместились номера ножек? Я сам в шоке. Естественно, плата с такой разводкой не заработала.




Комментарии
  1. VRP написал(а) 9 октября, 2011 в 13:22

    Вот! А я всегда говорил что альтиум — унылое говно, а пикад 2001 — рулит ).

  2. uschema.com написал(а) 9 октября, 2011 в 13:40

    Прикольно.
    1) мне кажется, виноват ты что в камтастике этого не отследил сам, да да, нужно такое признавать ;) Это ты должен был сам найти. Тут виноват не сколько альтиум и его конвертов — сколько простая человеческая невнимательность. Нельзя надеяться на автоматику. Ну пропустил, или не знал, бывает, можешь сделать выводы)))
    Хотя можно и на платоделов кала насыпать, они по идее должны были это проверить перед началом производства и сообщить тебе.
    (Во всяком случае те с кем я часто работал — проверяли и перезванивали уточнить — оставлять ли как есть или я переделаю…)
    2) part swapping — ядовитое зло, стараюсь не использовать его вообще, получается дольше, но всегда уверен что не будет косяка.
    А вообще как по моему, PCAD2006 рулит )) но в нем много современных вкусностей не просто сделать или не возможно.

    BSVi Reply:

    Да нет, основная функция программы должна работать безукоризненно. Я конечно могу все проверять за программой, но нафига тогда она нужна?

    uschema.com Reply:

    ну так основная функция — помочь те сделать проект, и втоматизировать, а тут был косяк одной лишь утилиты конвертилки, можешь отбагрепортиться, мож пофикся в сервиспаке )
    кстати, возможно еще какая-то галочка за это отвечает))
    …а косяки в part swapping обычно из-за фиговых либ, самое узкое место при юзании сторонних либ.

    BSVi Reply:

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

    uschema.com Reply:

    Бывало что косяки пикада находил, правда выяснилось что это из за того что были dll-ки удалены нужные… или из-за эмуляции.
    Я очень часто перепроверяю, просто потому что я не доверяю автоматике и технике, это мой бзик не доверять всему сразу. :) Правда это не всегда исключает тоже что будет что-то пропущено. Часто я все же замечаю, и это помогает находить косяки, иногда даже было что не те галочки ставил. в спешке, и при перепроверке обнаруживал.

    DVF Reply:

    «При экспорте, Альтиум их сохраняет как гербер-макрос, а их понимают не все производители…»
    Так в чем косяк Альтиума? В том, что наши некоторые говно-изготовители не идут в ногу со временем? Или в том, что производитель не уведомил Вас о своей немощности, увидев у себя на выходе г-но?
    По свапу смеяться не готов, так как не пользуюсь этим инструментом — легче в схеме сменить гейты и апдейтить в плату. Но и не буду возражать против бага, потому как столкнулся тоже с непонятным явлением, когда после назначения гейту номера 3 в четырехгейтной логике, один из пинов символьного элемента съезжал с заданного по сетке положения и в режиме привязки к сетке wire к нему не коннектился.

    BSVi Reply:

    Да причем тут «в ногу со временем»? Не будут производители менять станки чтобы угодить альтиуму — слишком это жирно. Альтиум знает про проблему, для этого и сделал эту галочку. Только вот сделал ее паршиво. Так как я делал плату у «быстрого» производителя, он тупо печатал то, что я дал, не проводя DRC у себя. Меня это устраивало до того, как альтиум выдал вот такое. В принципе, и я мог верифицировать файлы, но, блин, инструмент, тем более, такой дорогой как альтиум должен делать то, для чего он предназначен нормально.

    DVF Reply:

    А кто сказал, что преобразование в вектор должно пройти без потери качества?
    Производители не станки, а программное обеспечение будут менять, если не хотят потерять клиентов — и так многое в поднебесную отправляют. Я тут не хочу на злобные взгляды нарываться, потому как не настолько силен во всем этом, впрочем, как и Вы, поэтому посоветовал бы отписаться сюда ( http://electronix.ru/forum/index.php?showtopic=44963&st=720 ) и посмотрим все вместе, что ответят умудренные опытом люди.

    Co_balt Reply:

    я юзаю Gerber Viewer http://gerbv.gpleda.org/ позволяет посмотреть что там насохранял CAD

    BSVi Reply:

    В принципе, что насохранял альтиум можно посмотреть и самим альтиумом. Просто обиден сам факт, что сохраняет он криво.

  3. zgora написал(а) 9 октября, 2011 в 21:31

    Altium недавно перенес разработку из Сиднея в Китай. Большая часть людей которые делали Altium уволена и наняты новые разработчики в Китае. Естественно это должно сказаться на качестве продукта.

  4. treasure написал(а) 9 октября, 2011 в 23:08

    Добавлю к багам АД10. И тоже с последним апдейтом.
    При создании гербера и отражении пленки получаем такое:

    Это FT2232C и 0805 резисторы.

    Пришлось зеркалить при печати.

    treasure Reply:

    картинка:
    http://radikal.ru/F/s001.radikal.ru/i196/1110/3f/c084bf2b5ed5.png.html

    BSVi Reply:

    Красотуличка. Похоже, альтиум совсем исполнился (

    DVF Reply:

    Страх божий. Ну у меня последний релиз и тоже есть платы с МК и 0805, а также с элементами той же размерности, что и FT2232C, но такого не замечалось.
    http://www.10pix.ru/img1/2860/5844289.jpg
    http://www.10pix.ru/img1/2876/5844292.jpg

    treasure Reply:

    Помогла параноидальность при проверке — обычно я распечатываю на обычной бумаге и примеряю все компоненты. Очень помогает отловить большую часть косяков.

    Ключевой момент, как я понял — зеркалим самим альтиумом. Если не зеркалить, то все нормально.

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

    DVF Reply:

    Что имеется ввиду под «зеркалим самим альтиумом»? В камтастике?

    treasure Reply:

    Да, именно в камтастике.

    НО! В 10.700 уже полечили. :)

  5. DOZA написал(а) 10 октября, 2011 в 9:18

    Дареному коню в зубы не смотрят! Купите и будет без багов…

    treasure Reply:

    Наивный…
    Чем он будет отличаться-то? Ну кроме разве что возможности увлеченно пинать ТП? А работа как стояла при таких косяках, так стоять и будет до ближайшего апдейта.

    DOZA Reply:

    А ты пробовал пинать ТП? И кто тебе сказал что платная и халявная одинаковы?

    treasure Reply:

    Именно альтиум нет, не пробовал. А что, есть такой опыт? Тогда поделись, очень интересно.
    А кто сказал, что они разные, если установлен из копии оригинального репа?

    DOZA Reply:

    Сам копию оригинального репа делал? …. Всё остальное бла-бла-бла

    P.S.: Верификация для того и сделана чтобы обнаружить ошибки… если её не делать, то и нечего пенять на altium…

    treasure Reply:

    Ну не последний апдейт, а какой-то из пятисотых да, сам сливал (был доступ к тачке с лиц. сабжем). А что?
    К чему это замечание про верификацию, если явный косяк альтиума?

    DVF Reply:

    Меньше грызитесь — зубы целее будут.
    А под герберы САМ350 заточен как для DRC, так и для иных операций.

  6. yaniw написал(а) 12 октября, 2011 в 21:06

    Интересно такие баги как Вы описвли чужды только для 10 или встречаются и в 9 версии Альтиума?

    BSVi Reply:

    Не чужды, а присущи. В девятом они тоже есть. Хотя, партсвоппинг я там много использовал и такого не было, с гербером проверил — все точно так-же.

  7. Lockdog написал(а) 14 октября, 2011 в 22:06

    1. То что на заводе не смогли сделать зазор — это их проблемы, они должны перед запуском плат проверять, все ли зазоры они могут соблюсти в соотвествии с их возможностями, если не могут, то должны сообщать заказчику. По крайней мере в резоните такого не прокатывало.
    2. Это опять же не косяк разработчиков, а тех кто клепал библиотеки. =)

    BSVi Reply:

    1. Начальная DRC позволяет только оценить возможность. Проверить завод может только если ты заказываешь электроконтроль, а это — дополнительные деньги.
    2. Библиотеки совершенно нормально описаны. Я не зря показал табличку партсвоппинга для этого элемента. В ней все корректно.

    Lockdog Reply:

    1. Не-не-не, я как-то накосячил с зазором между двумя дорожками и мне звонил технолог и сказал, что они не могут выполнить такой зазор.
    2. Тогда извиняюсь :)

    m9i Reply:

    1. Аналогично — технологи на производстве что у нас, что в Китае выходят на связь и говорят про проблемы с зазорами. А китайцы зачастую еще и про большинство других странностей на плате спрашивают.
    2. И все-таки в библиотеках косяк — не описаны pin group. Потому альтиум и разбрасывает выводы как его душе угодно в пределах одного элемента. Пин/партсвоппинг — очень полезный инструмент, только надо досконально готовиться к его использованию.

  8. SpiritWar написал(а) 27 апреля, 2012 в 20:55

    А не пробовали подменить OUT_Gerber.dll — официальная подмена от altium’a????
    http://www.altium.com/community/downloads/en/legacy.cfm
    Может поможет???

    BSVi Reply:

    Не пробовал.

  9. gidrosys написал(а) 14 октября, 2014 в 15:41

    Добрый день. Недавно после долгого и упорного освоения ментора решил попробовать альтиум и тут же столкнулся с проблемой. При перемещении в pcb не отрисовывается посадочное место, а так же не отрисовывается дорожка в момент её протягивания. Подскажите с чем это может быть связано? Спасибо.

Создать новую ветку комментариев


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