Python có được sử dụng trong tự động hóa công nghiệp không?
Đây là câu chuyện về Python tại cơ sở sản xuất chất bán dẫn Philips ở Fishkill, NY. Cơ sở này, ban đầu được xây dựng bởi IBM, đã được Philips mua lại vào năm 2000. Tôi đã tham gia và tắt cơ sở này trong mười hai năm qua và chịu trách nhiệm thiết kế lại các phần quan trọng của phần mềm điều khiển công cụ nhà máy bằng Python Show Vào đầu những năm 1990, nhà máy đã áp dụng chiến lược tự động hóa dựa trên công nghệ bộ nạp và dỡ công cụ của Asyst Technology. Công nghệ này đã giảm thiểu sự nhiễm bẩn của các tấm bán dẫn bằng cách sử dụng rô-bốt để vận chuyển chúng giữa các hộp chứa kín và các công cụ xử lý và đo lường. Là một phần của sự thay đổi này, việc kiểm soát dây chuyền sản xuất đã được phân cấp và "máy trạm công cụ" đã được cài đặt trên hầu hết các công cụ riêng lẻ. Các trạm làm việc của công cụ này đã thay thế các thiết bị đầu cuối của bộ điều khiển khu vực hiện tại làm giao diện chính cho hệ thống điều khiển của nhà máy, đồng thời đảm nhận một số nhiệm vụ bổ sung
Vào đầu những năm 1990, kiến trúc của phần mềm máy trạm công cụ được chia thành một số thành phần riêng biệt. Giao diện người dùng, mô-đun giao tiếp SECS, giao diện thu thập dữ liệu, v.v. Các hoạt động của từng thành phần này được điều phối bởi một công cụ giải trình tự trong mỗi máy trạm. Vào thời điểm đó, các thành phần và công cụ giải trình tự được viết bằng C và các hoạt động cấp cao được giải trình tự bằng một ngôn ngữ kịch bản độc quyền đơn giản Cách tiếp cận này đã được sử dụng để phát triển các Chương trình Ứng dụng Công cụ (TAP) trong khoảng 6 năm. Nó được các nhà phát triển hiểu rõ, nhưng có những nhược điểm sau
Nhập Python Sau một thời gian xa cơ sở, tôi trở lại cơ sở Fishkill vào năm 1997. Lúc này, tôi được giao nhiệm vụ thiết kế lại kiến trúc hệ thống bằng công nghệ hiện đại, một dự án được tài trợ do mối quan tâm của Y2K Trong quá trình xây dựng cơ sở hạ tầng cho kiến trúc này, tôi đã phát triển ngôn ngữ lập trình thông dịch hướng đối tượng của riêng mình, được đặt tên là Bridge Scripting Language (BSL), để thay thế cho ngôn ngữ trình tự ban đầu. Tôi muốn duy trì và mở rộng khả năng dễ dàng thực hiện các thay đổi đối với logic nghiệp vụ mà không cần phải biên dịch lại mã - một tính năng rất hữu ích khi hỗ trợ môi trường sản xuất. Mã thực hành kinh doanh chung ban đầu của hệ thống, cũng như mã thực hành kinh doanh cụ thể cho một vài TAP đầu tiên, được viết bằng BSL Chính trong thời gian này, tôi bắt đầu quan tâm đến Python. Python có nhiều tính năng giống như BSL - rõ ràng, cú pháp giống C, dễ sử dụng từ điển và các kiểu trình tự, và khả năng mở rộng C/C++. Ngoài ra, nó đã trưởng thành, nhiều tài liệu và một cộng đồng phát triển tích cực đằng sau nó Vì việc hỗ trợ trình thông dịch BSL ngày càng trở nên cồng kềnh và vì mã BSL rất dễ chuyển sang Python, nên tôi đã tiếp cận các nhà phát triển cấp cao với đề xuất rằng chúng ta nên đổi ngựa ở giữa dòng và thay thế BSL bằng Python Đề xuất này ban đầu vấp phải nhiều phản ứng trái chiều. Có một số lo ngại về việc liệu bất kỳ ngôn ngữ kịch bản nào (cả BSL hoặc Python) có thực sự phù hợp với phần lớn mã trong hệ thống hay không. Ngoài ra còn có một đội ngũ rất mạnh ủng hộ việc chuyển các phần quan trọng của mã BSL của chúng tôi sang C++. Theo như các ngôn ngữ được giải thích, mọi người dường như có một sở thích không phải là Python Cuối cùng, sau nhiều cuộc thảo luận, Python đã thắng thế và các nhà phát triển cấp cao đã đồng ý rằng chuyển sang Python là điều nên làm. Điều cuối cùng đã khiến quyết định được đưa ra là thực tế là sẽ mất khoảng ba tháng để chuyển cơ sở mã BSL sang C++. Phải mất hai tuần để chuyển nó sang Python Dự án này cuối cùng đã thay thế hầu hết mọi thành phần của hệ thống ban đầu. Các lĩnh vực chức năng phụ thuộc nhiều vào API cấp thấp đã được viết lại bằng C++. Giao diện người dùng cũng được viết lại bằng C++, để tận dụng Thư viện lớp giao diện người dùng Visual Age. Tất cả các thành phần này đều có thể định địa chỉ thông qua cơ sở hạ tầng đối tượng phân tán giống như CORBA Logic nghiệp vụ điều khiển các thành phần này được viết bằng Python, 90% trong số đó là chung cho tất cả các công cụ Kiến trúc Hệ thống cho Dây chuyền Sản xuất Chất bán dẫn của Philips Phóng to Kết quả Dự án này là một thành công lớn. Chúng tôi đã xây dựng lại tám năm nỗ lực phát triển phần mềm từ đầu trong vòng chưa đầy hai năm và với một nhóm nhỏ hơn đáng kể. Tôi gán điều này phần lớn cho Python. Với Python, rất dễ dàng để phát triển mã nhanh chóng Dựa trên kinh nghiệm của tôi trong dự án này, tôi tin rằng có ba lý do tại sao Python tạo điều kiện cho sự phát triển nhanh chóng
Bằng cách sử dụng Python, phần lớn là do các tính năng RAD được xác định ở trên, chúng tôi đã nhận ra những lợi ích bổ sung sau
Vì phần viết lại này đã hoàn thành và vì nó rất thành công nên chúng tôi cũng đã sử dụng Python trong nhiều dự án khác. Ví dụ: hệ thống thư viện triển khai các thành phần phần mềm cho tất cả các máy trạm của chúng tôi hiện được viết bằng Python. Giao diện với hệ thống điều khiển nhà máy (một hệ thống cũ) được bao bọc trong Python để cung cấp định tuyến động, một tính năng cho phép bỏ qua một số hoạt động sản xuất tùy thuộc vào hoàn cảnh. Python cũng được sử dụng để giám sát máy chủ, thực hiện sao lưu, bảo trì cơ sở dữ liệu và cho nhiều nhiệm vụ phân tích dữ liệu Hôm nay, nhóm phần mềm máy trạm công cụ tham gia chuyển đổi hệ thống của chúng tôi từ OS/2 sang Linux. Phần hệ thống được viết bằng Python sẽ hầu như không yêu cầu thay đổi đối với cổng này. Cũng rất có khả năng các thành phần hệ thống khác hiện được viết bằng C++ sẽ được viết lại bằng Python vì tính di động của nó và vì hạn chế về thời gian hầu như ngăn cản bất kỳ khả năng nào khác Phần kết luận Nhóm phát triển Philips Fishkill TAP đã tích lũy được nhiều kinh nghiệm với Python và đã phát triển một lượng lớn mã với nó. Họ đã nhận thấy Python là một cách mạnh mẽ và hiệu quả để viết, gỡ lỗi và bảo trì các hệ thống phức tạp. Trong khi họ vẫn cởi mở với các công nghệ khác, Python tiếp tục cho phép họ nhanh chóng cung cấp các giải pháp trong lĩnh vực sản xuất chất bán dẫn đòi hỏi khắt khe Giới thiệu về tác giả Michael Muller là một nhà tư vấn phần mềm đã thiết kế và lập trình các hệ thống phần mềm mạng trong hơn 12 năm. Ngoài Python, anh ấy còn có nhiều kinh nghiệm về C/C++, Perl, bash, Rexx và Java. Anh ấy đã làm việc cho UPS, MCI, Verizon (khi họ còn là Nynex), IBM và Philips. Michael là một trong những thành viên sáng lập của Enduden Consulting Inc. (www. chịu đựng. com) thông qua đó anh ta có thể làm việc theo hợp đồng Ngôn ngữ lập trình nào được sử dụng trong tự động hóa công nghiệp?Python, C# và Java hiện là ba ngôn ngữ lập trình hàng đầu cho tự động hóa công nghiệp. Chúng có sự kết hợp phù hợp giữa các tính năng, khung và thư viện để ứng dụng nhanh chóng và hiệu quả.
Những ngành công nghiệp nào sử dụng Python?Python được sử dụng bởi Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify và một số công ty lớn khác. It's one of the four main languages at Google, while Google's YouTube is largely written in Python. Same with Reddit, Pinterest, and Instagram.
Python có tốt cho kiểm thử tự động không?Python là một trong những ngôn ngữ lập trình dành cho kiểm thử phần mềm tự động , dễ học và dễ sử dụng. Nó làm cho việc kiểm thử phần mềm tự động trở nên dễ dàng hơn, ngay cả đối với những người kiểm thử mới bắt đầu hành trình kiểm thử phần mềm.
Python được sử dụng như thế nào trong ngành sản xuất?Việc sử dụng python trong ngành sản xuất là trong các ứng dụng chuẩn bị hình ảnh và tin học hóa trực quan . Hình ảnh ở khắp mọi nơi. |