فهرست مطالب:

نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون: 3 مرحله
نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون: 3 مرحله

تصویری: نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون: 3 مرحله

تصویری: نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون: 3 مرحله
تصویری: گلوک چگونه کار می کند 2024, نوامبر
Anonim
نحوه استفاده از Eagle CAD در Travis CI برای اتوماسیون ساخت
نحوه استفاده از Eagle CAD در Travis CI برای اتوماسیون ساخت
نحوه استفاده از Eagle CAD در Travis CI برای اتوماسیون ساخت
نحوه استفاده از Eagle CAD در Travis CI برای اتوماسیون ساخت
نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون
نحوه استفاده از Eagle CAD در Travis CI برای ساخت اتوماسیون

هدف این مقاله توضیح نحوه تنظیم travis ci (فایل.travis.yml) به گونه ای است که بتواند فایلهای eagle 7 (شماتیک.sch و pcb. brd) را پردازش کند. در نتیجه ، به طور خودکار تصاویر ، فایل های gerber و صورتحساب/لیست های فرعی تولید می کند ، ERC و DRC را بررسی می کند ، مسیریابی خودکار انجام می دهد و پروژه را به KiCAD صادر می کند.

این دستورالعمل از نحوه استفاده از Arduino IDE در Travis CI برای اتوماسیون ساخت الهام گرفته شده است که در اینجا توضیح داده شده است:

  • learn.adafruit.com/the-well-automated-ardu… و
  • learn.adafruit.com/continuous-integration-…

برای نمونه کار می توانید به نمایندگی های من نگاهی بیندازید:

github.com/drtrigon/sketchbook و

برای کار خود می توانید به سادگی https://github.com/drtrigon/eagle-view را فورک کنید و پروژه های.sch و.brd پروژه های خود را در چنگال بارگذاری کنید.

مرحله 1: CAD عقاب

در ابتدای این پروژه ، پروژه عقاب شما و پرونده های آن تشکیل شده است. من فرض می کنم که شما قبلاً چنین پروژه ای دارید - اگر نه ، اما می خواهید این دستورالعمل را به هر حال آزمایش کنید ، برای مثال می توانید از Arduino Uno Eagle Files موجود در فروشگاه آردوینو استفاده کنید (به برگه "اسناد" مراجعه کنید).

اگر قبلاً با عقاب آشنا نیستید و باید نحوه استفاده از آن را بیاموزید ، لطفاً یک آموزش یا نحوه استفاده از Eagle.cad را برای مثال ارائه دهید.

مرحله 2: اتوماسیون از طریق تراویس

حالا اجازه دهید نگاهی به "جادو" و نحوه عملکرد آن بیندازیم ، اگر هنوز با travis ci آشنا نیستید ، لطفاً برای مثال به شروع کار مراجعه کنید.

اساساً هنگام استفاده از تراویس در مسیر مشترک قدم می زنیم. ما git repo خود را در github قرار می دهیم یا آینه می کنیم ، travis را برای این repo فعال می کنیم (در github) ، یک فایل پیکربندی.travis.yml را به repo اضافه می کنیم و از خروجی حاصل از travis در repo خود استفاده می کنیم (به عنوان مثال تصاویر را در صفحه اصلی نمایش دهید ارائه شده توسط README.md).

با جزئیات بیشتر پیکربندی travis یک سرور x ساختگی (Xvfb) را راه اندازی می کند ، eagle و kicad را بارگیری و نصب می کند و کارهای زیر را اجرا می کند (xdotool):

  • ایجاد gerber ، افزودن فایل به بایگانی zip و تبدیل gerber به png
  • ایجاد تعالی مته
  • ایجاد لیست قطعات bom
  • خروجی تصویر برد
  • خروجی تصویر شماتیک
  • بررسی DRC و ERC (نتیجه ذخیره شده در تصویر)
  • به عنوان مثال ، روتر خودکار ، اگر AUTOROUTER_ENABLE روی true تنظیم شده باشد (نتیجه ذخیره شده در تصویر)
  • اگر عقاب به kicad تبدیل شود ، اگر KICAD_ENABLE روی true تنظیم شده باشد (تست شده/با KiCAD 5.0RC2 کار می کند)
  • بازگشت نتیجه به repo github (نیاز به راه اندازی GIT_USER و GIT_PASS)

اگر در یکی از این مراحل خطایی رخ داد ، تراویس با حالت مطلوب کار را تمام می کند.

مرحله 3: نتیجه گیری

مجموعه فایل های به دست آمده (به عنوان مثال برای Arduino Uno) شامل تمام فایل های gerber مورد نیاز برای تولید (تنظیم شده برای 2 لایه است ، اما البته می تواند به 4 افزایش یابد) ، تصاویری از شماتیک و برد PCB برای استفاده در هر محیطی (بدون نیاز به نصب عقاب ، کار یا اجرا) و یک پروژه kicad برای استفاده در آینده ، به عنوان مثال

برای نمونه های بیشتر ، شاخه های repo نمای عقاب را بررسی کنید.

در پایان می خواهم تأکید کنم که ما در حال حاضر تمام ابزارهای مورد نیاز برای خودکارسازی همه جنبه های پروژه های الکترونیکی با استفاده از github و travis را داریم:

  1. نرم افزار و سیستم عامل: نمونه های arduino توسط adafruit که در ابتدا ذکر شد را مشاهده کنید
  2. لوازم الکترونیکی (شماتیک ، سخت افزار/PCB): همانطور که در این قسمت توضیح داده شده است - همچنین استفاده از kicad را در نظر بگیرید
  3. سایر قطعات CAD (مکانیکی و غیره): اگر آنها را در قالب.stl ذخیره کنید ، github با در نظر گرفتن ویژگی های مختلف یک بیننده آنلاین را ارائه می دهد

    • help.github.com/articles/3d-file-viewer/
    • blog.github.com/2013-04-09-stl-file-viewin…
    • blog.github.com/2013-09-17-3d-file-diffs/

پیشرفتهای احتمالی آینده:

  • ارائه یک تصویر docker با نصب و راه اندازی عقاب و کیکاد به منظور ساده سازی و سرعت بخشیدن به اتوماسیون مشابه (همچنین هر بار نیاز به بارگیری عقاب از سرور ftp را برطرف کنید)

    github.com/drtrigon/docker-eagle و

توصیه شده: