Làm thế nào để đi từ người mới đến sản xuất?


47

Tôi là một người làm phần mềm muốn tham gia vào phần cứng của mọi thứ để tôi có thể tận hưởng sự sáng tạo tương tự từ thiết kế phần mềm trong thế giới vật lý.

Tôi đã tìm thấy rất nhiều bài viết ở đây về cách "chạy và chạy" trong thế giới điện tử, nhưng tôi muốn biết liệu có bất kỳ vấn đề nào khi bắt đầu cuộc hành trình này nếu mục tiêu của bạn là có khả năng có một thiết bị được sản xuất trong Tương lai. (có thể là các giải pháp trung tâm robot, bảng điều khiển động cơ servo, cảm biến, v.v.).

Tôi muốn chắc chắn rằng bất cứ nơi nào tôi tập trung vào mục tiêu của mình, tôi sẽ không "tự học một góc", có thể nói như vậy.

Tôi đã đọc những điều tốt về tính linh hoạt và dễ học của các thiết bị Arduino, nhưng gặp khó khăn trong việc tìm kiếm bất cứ điều gì về việc sản xuất chúng. Có nhà sản xuất nào có thể sản xuất một giải pháp dựa trên arduino không? Những loại khối lượng sản xuất có sẵn cho một cái gì đó bằng cách sử dụng Arduino?

Những lĩnh vực / thiết bị của thiết bị điện tử lập trình là tốt nhất để sản xuất?

Bất kỳ lời khuyên hoặc thông tin liên quan đến học tập và thiết kế với sản xuất trong tâm trí? Bất kỳ lời khuyên chung cho một người mới?


Tôi sẽ rất quan tâm đến điều này, tôi dự định sẽ làm nhiều điều tương tự.
Thomas O

Bây giờ bạn phải biết một cái gì đó hoặc tìm ai đó làm điều đó.
Olin Lathrop

Câu trả lời:


43

Chỉ để cho bạn biết những gì nằm phía trước ....

Nếu bạn muốn chuyển từ chế tạo bánh mì hoặc nguyên mẫu được chế tạo bằng tay sang PCB thực tế, bạn có rất nhiều giờ và bất cứ nơi nào có giá từ vài trăm đến vài nghìn đô la trước mặt, tùy thuộc vào mức độ bạn sẵn sàng tự làm .

Sơ đồ chụp và bố trí PCB

Trước hết bạn cần nắm bắt thiết kế của mình bằng cách sử dụng một số loại chương trình chụp sơ đồ, sau đó thiết kế PCB. Một trong những chương trình phổ biến là EAGLE , mà tôi sử dụng. Chúng có phiên bản EAGLE Light ($ 49), nhưng nó chỉ có thể được sử dụng cho sơ đồ với một tờ (bất kỳ kích thước), hai lớp tín hiệu và khu vực định tuyến 100x80mm (khoảng 4 "x3"). Đối với bất kỳ công việc nghiêm túc nào, bạn cần ít nhất phiên bản EAGLE Standard, có giá $ 747. Có lẽ có những lựa chọn khác ít tốn kém hơn (thậm chí miễn phí). Có rất nhiều thứ khác có giá hàng ngàn hoặc hàng chục ngàn đô la. Trong mọi trường hợp, bạn sẽ phải dành thời gian đáng kể để học cách sử dụng chương trình.

Hoặc bạn có thể trả tiền cho một người như tôi để làm điều đó cho bạn ($$ / giờ).

Chế tạo PCB

Bắt các bảng được thực hiện là bước tiếp theo của một nhà chế tạo PCB . Vấn đề ở đây là chi phí NRE (kỹ thuật không định kỳ). Một số nhà hội đồng coi điều này như một con số riêng biệt, và những người khác đã xây dựng nó thành báo giá trên mỗi bảng của họ. Trong mọi trường hợp, hầu như không bao giờ kinh tế khi chỉ có một vài bảng được thực hiện. Bạn có thể chi 100 đô la cho hai bảng và 500 đô la cho 25. Bạn cần có số lượng thực sự lớn để giảm xuống chỉ còn vài đô la cho mỗi bảng.

Gotcha là, nếu bạn tạo 25 bảng, chỉ cần một vài trong số chúng để thử nghiệm và thấy chúng không hoạt động (và không có cách khắc phục dễ dàng - ví dụ: vì bạn đã đặt một đầu nối ngược), bạn có thể sẽ ném bỏ 23 bảng trống khác đi và bạn sẽ tốt hơn nếu chỉ có hai. Tôi có hàng đống PCB trống để làm bằng chứng cho hiện tượng này.

Hội đồng PCB

Trừ khi bạn sẵn sàng xây dựng các bảng bằng tay, bạn sẽ cần phải lắp ráp chúng. Gói gắn trên bề mặt rất khó đối phó. Nếu bo mạch có các gói BGA hoặc QFN, có lẽ bạn sẽ không thể tự xây dựng chúng trừ khi bạn có lò nướng lại riêng.

Nhận hai bảng đầu tiên của bạn được xây dựng bởi một nhà lắp ráp có thể có giá 500 đô la. Trong khi đó, 25 chiếc được chế tạo có thể có giá 1200 đô la. (Một lần nữa, vấn đề ở đây là chi phí NRE.) Việc giảm xuống chỉ còn vài đô la cho mỗi bảng yêu cầu (một lần nữa) số lượng lớn.

Và một người khác đã thảo luận về vấn đề nhận được các bộ phận.

Hãy chắc chắn rằng bạn sử dụng các phần có sẵn - nếu cả DigiKey và Mouser đều có hàng trăm phần có sẵn, bạn sẽ ổn. Nếu thay vào đó, họ có nó trong danh mục của họ, nhưng hiện tại nó đã hết hàng, hãy thử tìm một cái gì đó khác. Nếu bạn cần một số bộ phận đặc biệt không được DigiKey hoặc Mouser mang theo, hãy đảm bảo bạn có một nguồn đáng tin cậy trước khi kết hợp nó vào sản phẩm của mình. (Lưu ý: bạn càng sử dụng nhiều phần bất thường, bạn càng có nhiều khả năng phải thêm phần thủ công vào thư viện bộ phận PCB của mình.)

Trường hợp tùy chỉnh

Bạn có muốn đặt bảng của bạn vào một trường hợp? Nếu bạn cần thiết kế trường hợp tùy chỉnh, đó sẽ là một cặp đôi dành cho nhà thiết kế sử dụng chương trình như SolidWorks (Tôi không làm điều đó, nhưng có thể giới thiệu ai đó có thể). Nếu bạn sắp thực hiện một vài trường hợp để bắt đầu, có lẽ bạn sẽ cần phải tạo mẫu nhanh, chẳng hạn như Chọn lọc Laser chọn lọc (SLS). Hình ít nhất $ 100 mỗi trường hợp với số lượng nhỏ. Để giảm xuống một vài đô la cho mỗi chi phí trường hợp, bạn cần phải có một khuôn tùy chỉnh được thực hiện. NRE thời gian một lần nữa! Kế hoạch chi 10.000 đô la trở lên cho khuôn.

Và tôi thậm chí sẽ không bắt đầu thử nghiệm EMC hoặc EMI, vì tôi không biết liệu nó có áp dụng cho sản phẩm của bạn không.

Như bạn có thể thấy từ tất cả những điều này, cho đến khi bạn đi vào sản xuất, chi phí cho các bộ phận điện tử thường không phải là mục lớn nhất trên cơ sở mỗi bảng. Tự lắp ráp cho khối lượng nhỏ sẽ giúp bạn tiết kiệm rất nhiều tiền. Vì vậy, điều quan trọng là phải thiết kế với ý nghĩ đó - không thể hàn các bộ phận bằng tay.

Để có được mức giá thực sự thấp cho khối lượng lớn, nói chung bạn cần phải đi ra nước ngoài - Trung Quốc, v.v. Nhưng tôi sẽ tránh làm như vậy ngay từ đầu.


Câu trả lời rất kỹ lưỡng, cảm ơn! ... một vài câu hỏi nhanh: Theo như bộ điều khiển lập trình (Arduino, hoặc một số PIC khác). Những mô hình nào được "hỗ trợ nhiều nhất" bởi các nhà sản xuất? Làm thế nào để logic lập trình hoạt động vào phương trình? (ví dụ: nhà fab làm cho hội đồng quản trị trong khi lắp ráp lại với nhau các thành phần, nhưng ai sẽ làm cho các mạch lập trình ở quy mô sản xuất để cung cấp cho các nhà lắp ráp?)
DJ_R

2
@DJ_R, nếu bạn đang xây dựng bo mạch của riêng mình với một bộ vi điều khiển với số lượng lớn, thì bạn có thể lập trình vi mô bởi nhà sản xuất chip (có tính phí) trước khi lắp ráp hoặc được lập trình bởi nhà sản xuất hợp đồng của bạn (nhà lắp ráp ) hoặc tự lập trình sau khi nhận lại từ nhà lắp ráp. Trong hai trường hợp sau, bạn sẽ có một số loại tiêu đề nhỏ (thường là bốn chân) để kết nối một nhóm lập trình được kết nối với PC. Các nhà sản xuất hợp đồng giống như nhà lắp ráp, ngoại trừ họ cũng có thể cung cấp các dịch vụ như thử nghiệm và đóng gói.
tcrosley

@DJ_R: Atmel AVR, Microchip PIC, Freescale HCS08 / 11 đều được hỗ trợ rất tốt bởi các công ty tương ứng theo kinh nghiệm của tôi. Con chip bạn chọn thường dựa trên các thiết bị ngoại vi của nó và giá bạn có thể nhận được cho nó.
Nick T

1
@DJ_R, Khi bạn thực hiện số lượng rất lớn, họ có thể lấy chip của bạn với chương trình đã được tải. Điều này được thực hiện bằng cách che dấu những gì đi vào ROM. Đó là một yêu cầu cho siêu rẻ trên bất kỳ sản phẩm chính. Tuy nhiên, bạn chỉ nên để lại một tiêu đề lập trình để khi bạn thực hiện nó, các chuyên viên máy tính trên E & R có thể kết nối và thay đổi mã trong thiết bị của bạn <3
Kortuk

1
Bạn không nhất thiết phải làm hàn tay. Reflow, sử dụng lò nướng bánh hoặc chảo, rất phổ biến.
Thomas O

12

Tôi đã đi xuống tuyến đường này trong vài năm qua và hiện đang bán số lượng nhỏ các thiết kế của tôi. Tôi đã chọn vi điều khiển Microchip từ rất sớm và đã bị mắc kẹt với chúng, nhưng Arduinos và vi điều khiển AVR có vẻ là một giải pháp tốt không kém.

Thiết kế PCB

Đối với thiết kế PCB tôi có thể đề xuất Eagle - Tôi chưa bao giờ vượt qua phiên bản Light vì tôi chỉ xây dựng các bảng khá nhỏ. Nó cho phép bạn thêm các phần của riêng bạn, mà bạn sẽ cần ở một số giai đoạn. Nó tự động định tuyến các rãnh PCB, mặc dù tôi thấy rằng tôi đang sử dụng ít thời gian hơn - một phần vì tôi tạo ra các bảng với các giới hạn không gian rất chặt chẽ và liên tục thay đổi cả vị trí và định tuyến để thu thập mọi thứ Nó cung cấp kiểm tra đối với các quy tắc thiết kế, giúp bắt lỗi ngớ ngẩn trong bố cục của bạn. Có rất nhiều thứ để học nhưng bạn sẽ thành thạo với nó theo thời gian và bảng có thể được sản xuất từ ​​các tệp kỹ thuật số của bạn.

Chế tạo PCB

Tôi xây dựng các bảng nguyên mẫu của riêng mình sau đó làm cho chúng được chế tạo một cách chuyên nghiệp khi tôi đã vượt qua được nguyên mẫu ban đầu. Tôi tạo nguyên mẫu các bảng hai mặt bằng cách sử dụng phim chuyển Press-n-Peel và máy in laser. Tôi thường xuyên làm các bảng với các gói gắn bề mặt QFN nhỏ với khoảng cách pad 0,5 mm - nó rất khó nhưng có thể được thực hiện cẩn thận. Chi phí cho các bảng được làm chuyên nghiệp là từ 3 đến 10 đô la cho số lượng khoảng 100.

Hội đồng PCB

Tôi khá thành công khi hàn lại bằng cách sử dụng một frypan điện. Có một chút quan tâm nhưng hợp lý đáng tin cậy và khá nhanh chóng. Phần chậm nhất là dán miếng hàn lên bảng, mặc dù nếu bạn bận tâm đến việc làm mặt nạ hàn có thể được thực hiện dễ dàng hơn. Tôi thường xuyên sử dụng các gói không chì như QFN vì chúng nhỏ và không gặp quá nhiều rắc rối với chúng. Các gói có khách hàng tiềm năng có thể được hàn bằng tay nếu bạn muốn, nhưng tôi nghĩ rằng sẽ nhanh hơn khi sử dụng bột hàn và hàn lại trong chảo.

Khi bạn nhận được khối lượng đáng kể, bạn sẽ muốn chuyển sang trả tiền cho người khác để thực hiện việc lắp ráp cho bạn. Tôi chưa làm điều này, nhưng đã được trích dẫn theo đơn đặt hàng $ 6500 cho 30 bảng, với các bộ phận có giá khoảng $ 80. Vì vậy, chi phí gia tăng không đáng kể nhưng nó phụ thuộc vào cách bạn chi phí thời gian để tự lắp ráp :)

Ngoài khoản đầu tư thời gian (lớn), khoản đầu tư lớn nhất của tôi có lẽ là máy hiện sóng và phân tích logic kỹ thuật số USB từ Bitscope - vô giá để tìm ra những gì đang thực sự xảy ra, trái ngược với những gì bạn nghĩ sẽ xảy ra!


11

Tối ưu hóa sớm là gốc rễ của mọi tội lỗi.

Arduino là một nơi tốt để bắt đầu. Đừng lo lắng về sản xuất hàng loạt. Một khi bạn có một vài thiết kế dưới thắt lưng, bạn sẽ có ý tưởng tốt hơn nhiều về những gì bạn cần làm.

Học phần cứng mới là một phần của trò chơi ở đây. Đừng cố gắng tránh nó. Bạn càng quen thuộc, bạn sẽ trở thành một kỹ sư giỏi hơn.



9

Mitch Altman, nhà thiết kế của TV-B-Gone đã nói chuyện tại The Next Hope về việc đưa dự án của bạn từ ý tưởng thành hiện thực.

Đây là MP3 .

Mitch đã mang các dự án thú cưng cá nhân của mình (bao gồm cả điều khiển từ xa phổ quát TV-B-Gone) từ ý tưởng đến thực tế, và may mắn kiếm sống bằng cách làm những gì mình yêu thích. Mitch sẽ phác thảo các bước thực tế mà anh ta đã thực hiện để đưa các dự án của mình từ một ý tưởng đơn thuần, thông qua các bước nghiên cứu, phát triển, sản xuất, bán hàng và phân phối, cuối cùng, để thu thập séc trong khi ở nhà thoải mái (và khi đi du lịch thế giới). Bài nói chuyện này cũng sẽ cho thấy một số cạm bẫy của việc điều hành doanh nghiệp của chính mình.


Cảm ơn các liên kết! Tôi chắc chắn sẽ kiểm tra cái này, có vẻ như nó nên có cái nhìn sâu sắc có giá trị.
DJ_R

Liên kết ngừng hoạt động ...
arao6


4

Đối với sản xuất PCB, bạn có thể tạo mẫu rất nhiều trên ván trượt và ván bánh mì và nhảy trực tiếp đến PCB chuyên nghiệp cho các đơn vị "sản xuất", tôi sử dụng những người này và tôi đã rất vui: http://iteadstudio.com /store/index.php?main_page=product_info&cPath=19_20&products_id=175 Seeed sử dụng cùng một nhà máy với mức giá tương đương.

Đối với bố cục PCB, đừng đầu tư quá nhiều thời gian vào EAGLE vì nó có một số hạn chế trong phiên bản miễn phí và nó khá cồng kềnh và khó sử dụng, thay vào đó hãy xem kicad và geda, cả hai đều là phần mềm miễn phí và có khả năng hơn EAGLE.


4

Bản thân tôi là một người mới, vì vậy hãy dùng nó với những hạt muối, nhưng tôi đã nghiên cứu nó rất nhiều trong tháng qua, và vì vậy tôi hy vọng sẽ mang lại một viễn cảnh nhu cầu người mới tốt cho nó. Đây là những gì tôi đã tìm ra:

LƯU Ý: Tôi đang sử dụng một vài từ viết tắt (PCB, SMD, v.v.). Tôi chưa viết những mục đích này có ý nghĩa gì, vì chắc chắn bạn cũng sẽ cần phải biết những khái niệm này một cách mật thiết.

  1. Bạn cần chuyển từ nguyên mẫu (Arduino?) Sang phiên bản PCB. Trước hết, hãy xem hai video này của EEVBlog: Video 1 , Video 2
  2. Chuyển từ nguyên mẫu sang phiên bản PCB có nghĩa là chuyển từ các thành phần thông qua lỗ sang các thành phần SMT và từ Arduino hoàn chỉnh sang giải pháp chip barebones. Tin tốt là bạn vẫn có thể lập trình nó như một Arduino. Xem bài đăng trên blog này để biết làm thế nào để làm như vậy. Nếu dự án của bạn đủ đơn giản, hãy sử dụng ATTINY (45 hoặc 85) thay vì ATMEGA328p. Xem bài đăng này từ MIT Lab để biết cách.
  3. Xây dựng nguyên mẫu không có arduino của bạn bằng cách sử dụng bảng mạch hoặc công cụ tạo mẫu khác như bình thường. Bạn có thể tìm thấy những phần bạn cần bằng Octopart . Một điều rất tốt để sử dụng là tính năng BOM của họ.
  4. Bây giờ hãy tìm hiểu xem các thành phần của bạn sẽ có giá bao nhiêu bằng cách tạo BOM (Bill Of Vật liệu). Sử dụng Octopart để tìm giá và nơi tốt nhất để mua các bộ phận của bạn.
  5. Khi nguyên mẫu của bạn được thực hiện theo cách này, đã đến lúc chuyển đổi nó thành phiên bản PCB. Bạn có thể sử dụng Fritzing cho sơ đồ PCB và các tệp Gerber để sản xuất PCB nếu bảng của bạn đủ đơn giản. Nếu không, hãy sử dụng một chương trình như EAGLE hoặc kiCAD .
  6. Nhận PCB của bạn được thực hiện và hàn trên các thành phần bằng tay. Đây là một video với một kỹ thuật tốt cho các bộ phận SMD . Để biết thêm thông tin (tôi cần tất cả) ở đây bạn đi .
  7. Sau khi hàn, KIỂM TRA NÓ QUAN TRỌNG. Bạn không muốn mua 500 sản xuất chỉ để biết rằng bạn đã phạm sai lầm và không ai trong số họ làm việc. Fritzing sẽ sản xuất các bảng một lần được thực hiện với chương trình của họ. Chúng sẽ có giá khoảng 40-50 $. Không phải là giá rẻ, nhưng đây là một nguyên mẫu. Bạn cũng có thể tự tạo PCB bằng quy trình bấm-n-Peel. Có một video tốt về nó ở đây .
  8. RẤT NHIỀU! Bạn có thể cần phải nhận được bảng của bạn CHỨNG NHẬN. Đây là một quá trình dài và tốn kém.
  9. Khi bạn tự tin vào PCB của mình, studio Seeed sẽ sản xuất (không chỉ PCB, toàn bộ bảng) với số lượng nhỏ (100-1000) với giá cả hợp lý, thông qua chương trình Tuyên truyền của họ .


1

Tôi không rõ là góc kỹ thuật mà bạn lo lắng hay góc kinh doanh?

Tôi có thể hơi bị vàng da về 'người có sở thích', nhưng tôi thực sự nghi ngờ rằng thế giới cần nhiều hệ thống con robot không thực sự chất lượng công nghiệp.

Các cơ sở sản xuất hợp đồng phụ tồn tại cho mọi khối lượng từ 1 lần đến hàng triệu lần và những thứ như PCB có thể được thực hiện ở mọi thời điểm từ ngày tiếp theo đến tuần. Kinh nghiệm của tôi về sản xuất điện tử là việc cung cấp linh kiện là một trong những vấn đề lớn nhất trừ khi bạn có đủ khối lượng để các nhà sản xuất linh kiện chạy xung quanh bạn. Ngày nay đối với các bộ phận có giá trị thấp, đó sẽ là khối lượng nghiêm trọng, nghiêm túc.

Có lẽ bạn nên làm rõ câu hỏi của mình một chút - bạn có dự định thiết kế cụ thể các thiết bị và sản xuất chúng, sau đó đặt chúng trên thị trường mở không?


Về cơ bản, tôi chỉ muốn chắc chắn rằng mình sẽ không "vượt trội" bất cứ lĩnh vực cụ thể nào trong ngành học điện tử mà tôi đã nỗ lực học tập. Về cơ bản, nếu tôi quyết định học lập trình phần cứng X, Y hoặc Z, tôi muốn chắc chắn rằng nếu một trong những ý tưởng của tôi đủ tốt, nó có thể dễ dàng chuyển thành thứ gì đó được sản xuất mà tôi không phải học một bộ hoàn toàn mới phần cứng để thực hiện quá trình chuyển đổi đó. Điều đó có làm rõ không?
DJ_R

Là một người đã làm việc với "hệ thống con robot công nghiệp", tôi có thể đảm bảo với bạn rằng hầu hết những gì trên thị trường là đã không thực sự chất lượng công nghiệp.
Sói Connor

1

Nếu bạn đang tìm kiếm một khởi đầu dễ dàng và rẻ tiền cho lập trình vi điều khiển, một nơi tốt để bắt đầu sẽ là sử dụng bộ công cụ phát triển Launchpad mới của TI. Bệ phóng

Điều này chỉ có giá $ 5 và theo tôi là khá dễ học.


Tôi là một kỹ sư phần mềm có nhiều kinh nghiệm lập trình và tôi bắt đầu phần cứng trên arduino. Msp430 khó hoạt động hơn, nhưng chắc chắn gần với những gì hầu hết các kỹ sư phần cứng sẽ sử dụng cho các dự án quy mô.
Matt Williamson

MSP430 với Grace cho cấu hình dễ dàng hơn hầu hết các môi trường vi mô dựa trên C. Mặc dù khó hơn Arduino, nhưng đây là một bước tiếp theo tuyệt vời.
darron

1

Đã có rất nhiều thông tin tuyệt vời ở đây về PCB fab và lắp ráp. Tôi sẽ chuyển qua một vài ý kiến ​​của riêng tôi. Bạn có thể đến một nhà lắp ráp, nhưng nó sẽ khiến bạn phải trả giá, đặc biệt là chi phí trả trước cho khuôn tô. Nếu bạn quyết định lắp ráp tại nhà, bạn sẽ thấy việc hàn các IC lớn (FPGA, vi điều khiển, RAM, v.v.) rất dễ dàng , nhưng các bộ phận gắn trên bề mặt chỉ có 2 hoặc 3 kết nối là một vấn đề khó giải quyết. Điều về việc sử dụng các thành phần thông qua lỗ cho những điều nhỏ nhặt đó. Cá nhân tôi đã tránh xa việc cố gắng hàn bất kỳ loại mảng lưới bóng. Có lẽ tôi nên cố gắng tự chữa cho mình, nhưng đó không phải là vấn đề cấp bách đối với tôi.


1

Nếu bạn định làm khối lượng lớn (nghĩ tới hàng triệu người), bạn sẽ thực hiện "thiết kế để sản xuất" để tối ưu hóa thiết kế của mình để dễ dàng và rẻ tiền để xây dựng và thử nghiệm. Hãy nghĩ về nó, nếu một kỹ sư sản xuất có thể cắt giảm 2 xu chi phí sản xuất cho 1.000.000 đơn vị thì bạn có một khoản tiết kiệm lớn.

Đối với 500 đơn vị, bạn là khối lượng tương đối thấp. Đây là một bài thuyết trình hay, Hãy lấy nội dung của bạn - Trình bày phần cứng mở ở Tokyo , theo Nguyên mẫu nguy hiểm . Về cơ bản, họ tuyên bố rằng ở cấp độ bạn đang nói về bạn quá nhỏ để tự mình xây dựng các bảng và nên sử dụng một ngôi nhà hoàn thành như họ ( Seeed Studios ). Họ trải qua các bước liên quan và những gì bạn cần. Các sàn trượt cũng có sẵn để tải về.


Seeed cũng có một giải pháp rất tốt đẹp cho sản xuất thấp (100-1000) ổ đĩa Lúc này, tuyên truyền Seeed: seeedstudio.com/propagate
Houen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.