OPC UA. NET Standard Stack จากมูลนิธิ OPC
ภาพรวม
การใช้งานการอ้างอิง OPC UA นี้มีการกำหนดเป้าหมายข้อกำหนดมาตรฐาน. NET
.NET มาตรฐานอนุญาตให้พัฒนาแอพที่ทำงานบนแพลตฟอร์มทั่วไปทั้งหมดที่มีอยู่ในปัจจุบันรวมถึง Linux, iOS, Android (ผ่าน Xamarin) และ Windows 7/8/8.1/10/11 (รวมถึง Embedded/IoT Editions) .
หนึ่งในการใช้งานอ้างอิงภายในโครงการนี้ได้รับการรับรองสำหรับการปฏิบัติตามผ่านห้องปฏิบัติการทดสอบการรับรอง OPC Foundation เพื่อพิสูจน์คุณภาพสูง การแก้ไขและการปรับปรุงเนื่องจากกระบวนการรับรองได้รับการทดสอบและตรวจสอบเพื่อการปฏิบัติตามโดยใช้เครื่องมือทดสอบการปฏิบัติตามกฎระเบียบล่าสุด (CTT)
นอกจากนี้ยังรองรับแอปพลิเคชันและบริการคลาวด์ (เช่น ASP.NET, DNX, Azure เว็บไซต์, Azure Webjobs, Azure Nano Server และ Azure Service Fabric)
ตัวอย่างเพิ่มเติมตามแพ็คเกจ NuGet อย่างเป็นทางการสามารถพบได้ในพื้นที่เก็บข้อมูลมาตรฐาน OPC UA .NET สำหรับการพัฒนานอกจากนี้ยังมีฟีด NuGet ตัวอย่างที่มีอยู่ สำหรับการทดสอบในท้องถิ่นคอนเทนเนอร์ Docker ของเซิร์ฟเวอร์อ้างอิงพร้อมใช้งานสำหรับการแสดงตัวอย่างและการสร้าง
สำหรับข้อมูลเพิ่มเติมและข้อกำหนดใบอนุญาตดูที่นี่
มีคุณสมบัติรวมอยู่ด้วย
หลักและห้องสมุด
- สแต็คและไลบรารี OPC UA ที่ผ่านการพอร์ตเต็มรูปแบบ (ไคลเอนต์เซิร์ฟเวอร์การกำหนดค่าประเภทที่ซับซ้อนและชุดประกอบ GDS)
- เซิร์ฟเวอร์ตัวอย่างอ้างอิงและไคลเอนต์
- X.509 การสนับสนุนใบรับรองสำหรับการรับรองความถูกต้องของไคลเอนต์และเซิร์ฟเวอร์
- การสนับสนุน SHA-2 (สูงถึง SHA512) รวมถึงโปรไฟล์ความปลอดภัย Basic256SHA256, AES128SHA256RSAOAEP และ AES256SHA256RSAPSS สำหรับการกำหนดค่าที่มีความต้องการด้านความปลอดภัยสูง
- ไม่ระบุชื่อชื่อผู้ใช้และการรับรองความถูกต้องของผู้ใช้ใบรับรอง X.509
- การขนส่ง UA-TCP & HTTPS (ไคลเอนต์และเซิร์ฟเวอร์)
- Reverse Connect สำหรับการขนส่ง UA-TCP (ไคลเอนต์และเซิร์ฟเวอร์)
- ใบรับรองโฟลเดอร์และระดับ OS (X509Store) ที่จัดเก็บพร้อมกับ Global Discovery Server และ Server Push Support
- เซสชันและการสมัครสมาชิก
- ห้องสมุด Pubsub พร้อมตัวอย่าง
คุณสมบัติที่สำคัญและการอัปเดตใน OPC UA 1.05
- การปรับปรุงความปลอดภัย : กลไกการเข้ารหัสและการตรวจสอบที่ได้รับการปรับปรุง
- การสนับสนุน CRL : เพิ่มการสนับสนุนรายการการเพิกถอนใบรับรองสำหรับ X509Store บน Windows
- การปรับปรุงประสิทธิภาพ : การเข้ารหัสและถอดรหัสแบบไบนารีเร็วขึ้นลดการใช้หน่วยความจำและเวลาแฝง
- การจัดการตามบทบาท : การสนับสนุนที่ดีและ RoleBasedUserManagement WelloundRoles & RoleBasedUserManagement
- ปรับปรุงการบันทึก : ปรับปรุงการบันทึกด้วย
ILogger
และ EventSource
ทำลายการเปลี่ยนแปลงและหัวขึ้นเมื่ออัพเกรดจาก 1.04 เป็น 1.05
- คุณสมบัติบางอย่างยังคงขาดหายไปเพื่อให้สอดคล้องกับ 1.05 (เช่นการสนับสนุน ECC) แต่การรับรองสำหรับ V1.04 ยังคงเป็นไปได้ด้วยการเปิดตัว 1.05
- ความปลอดภัยและการล็อคด้าย : ปรับปรุงความปลอดภัยของด้ายและการล็อคที่ลดลงในการดำเนินการช่องสัญญาณที่ปลอดภัย
- การตรวจสอบและ redaction : อินเทอร์เฟซใหม่สำหรับการตรวจสอบและ redacting ข้อมูลที่ละเอียดอ่อน
ใหม่ใน 1.05.374.70
- รองรับ CRL สำหรับ X509STORE บน Windows
ใหม่ใน 1.05.373
- 1.05 Nodeset
- สนับสนุนการจัดการที่ดีและ RoleBasedUserManagement
ใหม่ใน 1.04.368
- ปรับปรุงการสนับสนุนสำหรับการเข้าสู่ระบบด้วย
ILogger
และ EventSource
- รองรับการจัดเก็บใบรับรองที่กำหนดเองด้วยอินเตอร์เฟส refactored
ICertificateStore
และ CertificateStoreType
- การสนับสนุนไคลเอนต์และเซิร์ฟเวอร์สำหรับ transfersubscriptions
- วิธีใช้การสนับสนุนคอนเทนเนอร์กับเซิร์ฟเวอร์อ้างอิง
ตัวอย่างและแพ็คเกจ NuGet
- OPC UA คอนโซลอ้างอิงเซิร์ฟเวอร์สำหรับ. NET Core คอนเทนเนอร์ Linux ของ Builds ล่าสุดมีอยู่ที่นี่ ดูเพิ่มเติมการสนับสนุนคอนเทนเนอร์
- เซิร์ฟเวอร์อ้างอิง OPC UA ได้รับการรับรองสำหรับการปฏิบัติตามผ่านห้องปฏิบัติการทดสอบการรับรอง OPC Foundation การแก้ไขและการปรับปรุงเนื่องจากกระบวนการรับรองได้รับการทดสอบและตรวจสอบสำหรับการปฏิบัติตามโดยใช้เครื่องมือทดสอบการปฏิบัติตามกฎระเบียบ (CTT) การเผยแพร่ทั้งหมดได้รับการตรวจสอบเพื่อให้สอดคล้องกับเครื่องมือทดสอบการปฏิบัติตามกฎระเบียบล่าสุดโดยผู้ดูแลระบบ
- OPC UA Console Reference Publisher และ Console Reference Subscriber สำหรับ. NET Core และ. NET Framework
- แพ็คเกจ OPC UA NUGET อย่างเป็นทางการของ Core, Client, Server, Libraries และการกำหนดค่ามีให้สำหรับการรวมในโครงการ. NET หมายเหตุ: แพ็คเกจได้ถูกแบ่งออกเป็น CORE, แพ็คเกจไคลเอนต์และเซิร์ฟเวอร์เพื่อลดการพึ่งพาในโครงการที่จำเป็นต้องใช้ไคลเอนต์หรือเซิร์ฟเวอร์เท่านั้น การเชื่อม HTTPS ตอนนี้เป็นแพ็คเกจเสริมแยก
- ตัวอย่างฟีด NuGet มีให้เลือกจาก Azure DevOps
ข้อมูลโครงการ
ข้อมูลโครงการทั่วไป
สร้างสถานะ
คุณภาพรหัส
เริ่มต้น
เครื่องมือทั้งหมดที่คุณต้องการสำหรับมาตรฐาน. NET มาพร้อมกับเครื่องมือ. NET Core ดูเริ่มต้นด้วย. NET Core สำหรับสิ่งที่คุณต้องการ
วิธีสร้างและเรียกใช้ตัวอย่างอ้างอิงใน Visual Studio บน Windows
หมายเหตุ: เนื่องจาก. NET Core 2.1 เป็นจุดจบของชีวิต
- VS 2017 มีการสนับสนุนที่ จำกัด สำหรับ. NET 4.8 เท่านั้น
- VS 2019 มีการสนับสนุนที่ จำกัด สำหรับ. NET 4.8 เพราะ. NET Core 3.1 ถึงจุดสิ้นสุดของชีวิต
- VS 2022 เป็นเวอร์ชันที่รองรับปัจจุบันรวมถึง. NET 6.0 (LTS) และ. NET 8.0 (LTS)
- เปิดไฟล์โซลูชัน UA Reference.sln โดยใช้ Visual Studio
- เลือกโครงการใน Solution Explorer และตั้งค่าด้วยการคลิกขวาเป็น
Startup Project
- กด
F5
เพื่อสร้างและดำเนินการตัวอย่าง
วิธีการสร้างและเรียกใช้ตัวอย่างคอนโซลบน Windows, Linux และ iOS
ส่วนนี้อธิบายถึงวิธีเรียกใช้แอปพลิเคชันตัวอย่าง consolereferenceserver
โปรดทำตามคำแนะนำในบทความนี้เพื่อตั้งค่าสภาพแวดล้อมบรรทัดคำสั่ง DOTNET สำหรับแพลตฟอร์มของคุณ ณ วันนี้. NET Core SDK 3.1 เป็นสิ่งจำเป็นสำหรับ Visual Studio 2019 และ. NET SDK 6.0 เป็นสิ่งจำเป็นสำหรับ Visual Studio 2022
ข้อกำหนดเบื้องต้น
- เมื่อคำสั่ง
dotnet
พร้อมใช้งานให้ไปที่โฟลเดอร์รูทในสำเนาของที่เก็บและดำเนินการ dotnet restore 'UA Reference.sln'
คำสั่งนี้เรียกเข้า Nuget เพื่อกู้คืนต้นไม้ของการพึ่งพา
เริ่มต้นเซิร์ฟเวอร์
- เปิดพรอมต์คำสั่ง
- นำทางไปยัง แอปพลิเคชันโฟลเดอร์/consolereferenceserver
- ในการรันประเภทตัวอย่างเซิร์ฟเวอร์
dotnet run --project ConsoleReferenceServer.csproj -a
- เซิร์ฟเวอร์กำลังทำงานอยู่และรอการเชื่อมต่อ
ข้อสังเกต
ใบรับรองที่ลงนามด้วยตนเองสำหรับแอปพลิเคชันตัวอย่าง
ใบรับรองแอปพลิเคชันที่จำเป็นทั้งหมดสำหรับ OPC UA ถูกสร้างขึ้นในช่วงเริ่มต้นของแต่ละแอปพลิเคชันในแต่ละไดเรกทอรีหรือร้านค้าใบรับรองระดับระบบปฏิบัติการและยังคงใช้งานจนกว่าจะถูกลบออกจากร้านค้า โปรดอ่านใบรับรองสำหรับข้อมูลเพิ่มเติมเกี่ยวกับใบรับรองและร้านค้า
เซิร์ฟเวอร์ Discovery Local
โดยค่าเริ่มต้นแอปพลิเคชันตัวอย่างทั้งหมดได้รับการกำหนดค่าให้ลงทะเบียนด้วยเซิร์ฟเวอร์ Discovery Local (LDS) การใช้งานอ้างอิงของ LDS สำหรับ Windows สามารถดาวน์โหลดได้ที่นี่ ในการตั้งค่าความน่าเชื่อถือด้วย LDS ใบรับรองจะต้องมีการแลกเปลี่ยนหรือการลงทะเบียนจะล้มเหลว
การบริจาค
เราสนับสนุนให้มีการมีส่วนร่วมของชุมชนและการมีส่วนร่วมในโครงการนี้ ก่อนอื่นโปรดแยกที่เก็บและกระทำการเปลี่ยนแปลงของคุณที่นั่น เมื่อมีความสุขกับการเปลี่ยนแปลงของคุณคุณสามารถสร้าง 'คำขอดึง'
คุณต้องยอมรับข้อตกลงใบอนุญาตผู้สนับสนุนก่อนที่เราจะยอมรับการเปลี่ยนแปลงของคุณ ปุ่ม CLA และ "ฉันเห็นด้วย" จะปรากฏขึ้นโดยอัตโนมัติเมื่อคุณดำเนินการตามคำขอดึง คุณสามารถดูตัวอย่าง CLA ได้ที่นี่