Microsemi DG0440 Spuštění referenčního návrhu Modbus TCP na zařízeních SmartFusion2
Sídlo společnosti Microsemi
Jedna Enterprise, Aliso Viejo,
CA 92656 USA
V rámci USA: +1 800-713-4113
Mimo USA: +1 949-380-6100
Fax: +1 949-215-4996
E-mail: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Všechna práva vyhrazena. Microsemi a logo Microsemi jsou ochranné známky společnosti Microsemi Corporation. Všechny ostatní ochranné známky a servisní známky jsou majetkem příslušných vlastníků
Microsemi neposkytuje žádnou záruku, prohlášení ani záruku týkající se informací zde obsažených nebo vhodnosti svých produktů a služeb pro jakýkoli konkrétní účel, ani nepřebírá žádnou odpovědnost vyplývající z aplikace nebo použití jakéhokoli produktu nebo okruhu. Zde prodávané produkty a jakékoli další produkty prodávané společností Microsemi byly podrobeny omezenému testování a neměly by být používány ve spojení s kritickým vybavením nebo aplikacemi. Jakékoli výkonnostní specifikace jsou považovány za spolehlivé, ale nejsou ověřeny, a Kupující musí provést a dokončit veškeré výkonnostní a další testování produktů, a to samostatně a společně s jakýmikoli koncovými produkty nebo v nich instalované. Kupující se nebude spoléhat na žádná data a výkonové specifikace nebo parametry poskytnuté společností Microsemi. Je odpovědností kupujícího nezávisle určit vhodnost jakýchkoli produktů a testovat a ověřit je. Informace poskytované společností Microsemi níže jsou poskytovány „tak, jak jsou, kde jsou“ a se všemi chybami a veškerá rizika spojená s těmito informacemi nese výhradně Kupující. Microsemi neuděluje, explicitně ani implicitně, žádné straně žádná patentová práva, licence nebo jakákoli jiná práva duševního vlastnictví, ať už se jedná o takové informace samotné nebo cokoli popsaného v těchto informacích. Informace uvedené v tomto dokumentu jsou majetkem společnosti Microsemi a společnost Microsemi si vyhrazuje právo kdykoli bez upozornění provést jakékoli změny informací v tomto dokumentu nebo jakýchkoli produktů a služeb.
O Microsemi
Microsemi Corporation (Nasdaq: MSCC) nabízí komplexní portfolio polovodičových a systémových řešení pro letectví a obranu, komunikace, datová centra a průmyslové trhy. Produkty zahrnují vysoce výkonné a radiací zesílené analogové integrované obvody se smíšeným signálem, FPGA, SoC a ASIC; produkty pro řízení spotřeby; časovací a synchronizační zařízení a přesná časová řešení, stanovující světový standard pro čas; Zařízení pro zpracování hlasu; RF řešení; diskrétní součásti; podniková úložiště a komunikační řešení, bezpečnostní technologie a škálovatelný anti-tamper produkty; Ethernetová řešení; Integrované obvody Power-over-Ethernet a střední rozpětí; stejně jako možnosti a služby vlastního návrhu. Microsemi má centrálu v Aliso Viejo v Kalifornii a má přibližně 4,800 XNUMX zaměstnanců po celém světě. Více se dozvíte na www.microsemi.com.
Historie revizí
Historie revizí popisuje změny, které byly v dokumentu implementovány. Změny jsou uvedeny podle revizí, počínaje nejnovější publikací.
Revize 7.0
Aktualizován dokument pro vydání softwaru Libero v11.8.
Revize 6.0
Následující změny jsou provedeny v revizi 6.0 tohoto dokumentu.
- Požadavky na design Libero SoC, FlashPro a SoftConsole jsou aktualizovány v Požadavcích na design, strana 5.
- V celé příručce jsou aktualizovány názvy projektů SoftConsole použitých v návrhu demoverze a všechny související obrázky.
Revize 5.0
Aktualizován dokument pro vydání softwaru Libero v11.7 (SAR 76559).
Revize 4.0
Aktualizován dokument pro vydání softwaru Libero v11.6 (SAR 72924).
Revize 3.0
Aktualizován dokument pro vydání softwaru Libero v11.5 (SAR 63972).
Revize 2.0
Aktualizován dokument pro vydání softwaru Libero v11.3 (SAR 56538).
Revize 1.0
Aktualizován dokument pro vydání softwaru Libero v11.2 (SAR 53221).
Spuštění referenčního návrhu Modbus TCP na zařízeních SmartFusion2 pomocí IwIP a FreeRTOS
Zavedení
Microsemi nabízí referenční design pro SmartFusion®2 SoC FPGA zařízení, která demonstrují
Tri-speed ethernet medium access controller (TSEMAC) funkce SmartFusion2 SoC FPGA a implementuje protokol Modbus. Referenční návrh běží na uživatelské příručce UG0557: SmartFusion2 SoC FPGA Advanced Development Kit. Tento demo průvodce popisuje.
- Použití SmartFusion2 TSEMAC připojeného k sériovému gigabitovému rozhraní nezávislému na médiích (SGMII) PHY.
- Integrace ovladače SmartFusion2 MAC s odlehčeným protokolem pro řízení přenosu IP (IwIP) (TCP) nebo zásobníkem IP a bezplatným operačním systémem v reálném čase (RTOS).
- Aplikační vrstva s protokolem průmyslové automatizace, Modbus na TCP nebo IP.
- Jak spustit referenční návrh
Subsystém mikrokontroléru (MSS) FPGA SmartFusion2 SoC má instanci periferie TSEMAC. TSEMAC lze nakonfigurovat mezi hostitelským procesorem a sítí Ethernet při následujících rychlostech přenosu dat (rychlosti linky):
- 10 Mbps
- 100 Mbps
- 1000 Mbps
Další informace o rozhraní TSEMAC pro zařízení SmartFusion2 naleznete v uživatelské příručce UG0331: SmartFusion2 Microcontroller Subsystem User Guide.
Použití protokolu Modbus
Modbus je protokol pro zasílání zpráv aplikační vrstvy přítomný na sedmé úrovni
model otevřeného propojení systémů (OSI). Umožňuje klientskou nebo serverovou komunikaci mezi zařízeními připojenými v různých typech sběrnic nebo sítí. Je to servisní protokol, který nabízí mnoho služeb specifikovaných funkčními kódy. Funkční kódy Modbus jsou prvky datových jednotek protokolu Modbus požadavku nebo odpovědi. Mezi komponenty protokolu Modbus patří:
- TCP nebo IP přes Ethernet
- Asynchronní sériový přenos přes různá média
- Drát:
- EIA/TIA-232-E
- EIA-422
- Vlákno EIA/TIA-485-A
- Rádio
- Modbus PLUS, vysokorychlostní síť předávání tokenů
Následující obrázek popisuje komunikační zásobníky Modbus pro různé komunikační sítě.
Obrázek 1 • Komunikační zásobník Modbus
Použití protokolu Modbus na zařízení SmartFusion2
Modbus TCP server běží na SmartFusion2 Advanced Development Kit a reaguje na Modbus TCP klienta běžícího na hostitelském PC. Následující obrázek ukazuje blokové schéma Modbus TCP serveru a aplikace na zařízení SmartFusion2.
Obrázek 2 • Blokové schéma Modbus TCP serveru a aplikace na SmartFusion2
0RGEXV 7&3 $SSOLFDWLRQ | 0RGEXV 7&3 6HUYHU |
,Z,3 7&3 RU ,3 6WDFN | |
)UHH5726 | )LUPZDUH |
6PDUW)XVLRQ2 $GYDQFHG 'HYHORSPHQW .LW (+:) |
Požadavky na design
V následující tabulce jsou uvedeny požadavky na návrh hardwaru a softwaru.
Tabulka 1 • Reference Design Requirements and Details
Požadavky na design: Popis
Železářské zboží
- Pokročilá vývojová sada SmartFusion2
– Kabel USB A na mini-B
- 12V adaptér
Rev A nebo novější - Ethernetový kabel RJ45
- Jakýkoli z následujících programů pro emulaci sériového terminálu:
– HyperTerminal
– TeraTerm
– Tmel - Hostitelský počítač nebo notebook Windows 64bitový operační systém
Software
- Libero® System-on-Chip (SoC) v11.8
- SoftConsole v4.0
- Programovací software FlashPro v11.8
- Ovladače USB na UART –
- MSS Ethernet MAC ovladače v3.1.100
- Program pro emulaci sériového terminálu HyperTerminal, TeraTerm nebo PuTTY
- Prohlížeč Mozilla Firefox nebo Internet Explorer
Demo design
Následující části popisují ukázkový návrh referenčního návrhu Modbus TCP na zařízeních SmartFusion2 využívajících IwIP a FreeRTOS.
Demo design files jsou k dispozici ke stažení na:
http://soc.microsemi.com/download/rsc/?f=m2s_dg0440_liberov11p8_df
Demo design files zahrnují:
- Libero
- Programování files
- HostTool
- Readme
Následující obrázek ukazuje strukturu nejvyšší úrovně návrhu files. Další informace naleznete v souboru Readme.txt file.
Obrázek 3 • Demo Design Files Struktura nejvyšší úrovně
Funkce demo designu
Referenční design obsahuje:
- Dokončete projekt Libero SoC Verilog
- Projekt firmwaru SoftConsole
Referenční návrh může podporovat následující kódy funkcí Modbus v závislosti na volném nastavení komunikačního zásobníku Modbus:
- Čtení vstupních registrů (kód funkce 0×04)
- Čtení přídržných registrů (kód funkce 0×03)
- Zápis jednotlivých registrů (kód funkce 0×06)
- Zápis více registrů (kód funkce 0×10)
- Čtení nebo zápis více registrů (kód funkce 0×17)
- Čtení cívek (kód funkce 0×01)
- Zápis jedné cívky (kód funkce 0×05)
- Zápis více cívek (kód funkce 0×0F)
- Čtení diskrétních vstupů (kód funkce (0×02)
Referenční návrh podporuje následující kódy funkcí Modbus pro všechna bezplatná nastavení komunikačního zásobníku Modbus:
- Čtení vstupních registrů (kód funkce 0×04)
- Čtení diskrétních vstupů (kód funkce (0×02)
- Zápis více cívek (kód funkce 0×0F)
- Čtení přídržných registrů (kód funkce 0×03)
Popis demo designu
Návrh je realizován pomocí rozhraní SGMII PHY konfigurací TSEMAC pro provoz desetibitového rozhraní (TBI). Další informace o rozhraní TSEMAC TBI naleznete v uživatelské příručce UG0331: SmartFusion2 Microcontroller Subsystem.
Hardwarový projekt Libero SoC
Následující obrázek ukazuje implementaci návrhu hardwaru, na které běží podřízený firmware referenčního návrhu.
Obrázek 4 • Design hardwaru nejvyšší úrovně Libero SoC
Hardwarový projekt Libero SoC využívá následující prostředky a adresy IP SmartFusion2 MSS:
- Rozhraní TSEMAC TBI
- MMUART_0 pro komunikaci RS-232 na SmartFusion2 Advanced Development Kit
- Vyhrazený vstupní pad 0 jako zdroj hodin
- Univerzální vstup a výstup (GPIO), který propojuje následující:
- Světelné diody (LED): 4 čísla
- Tlačítka: 4 číslice
- Přepínače Dual In-line Package (DIP): 4 čísla
- Následující prostředky desky jsou spojeny s příkazy Modbus:
- LED diody (cívky)
- DIP přepínače (diskrétní vstupy)
- Tlačítka (diskrétní vstupy)
- Hodiny reálného času (RTC) (vstupní registry)
- Vysokorychlostní sériové rozhraní (SERDESIF) SERDES_IF IP, konfigurováno pro SERDESIF_3 EPCS pruh 3, viz následující obrázek. Další informace o vysokorychlostních sériových rozhraních naleznete v uživatelské příručce vysokorychlostních sériových rozhraní UG0447-SmartFusion2 a IGLOO2 FPGA.
Následující obrázek ukazuje okno High Speed Serial Interface Configurator.
Obrázek 5 • Okno konfigurátoru vysokorychlostního sériového rozhraní
Přiřazení pinů balíčku
Přiřazení pinů na balení pro LED, DIP přepínače, tlačítkové přepínače a signály rozhraní PHY jsou uvedeny v následující tabulce až po Tabulka 5, strana 9.
Tabulka 2 • Přiřazení LED k pinům balení
- Pin výstupního balíčku
- LED_1 D26
- LED_2 F26
- LED_3 A27
- LED_4 C26
Tabulka 3 • DIP přepne na přiřazení pinů balíčku
- Pin výstupního balíčku
- DIP1 F25
- DIP2 G25
- DIP3 J23
- DIP4 J22
Tabulka 4 • Tlačítko přepíná na přiřazení kolíků balíčku
- Pin výstupního balíčku
- SPÍNAČ1 J25
- SPÍNAČ2 H25
- SPÍNAČ3 J24
- SPÍNAČ4 H23
Tabulka 5 • Přiřazení signálů rozhraní PHY k pinům balení
- Název portu Směr Balíček Pin
- PHY_MDC Výstup F3
- PHY_MDIO Vstup K7
- PHY_RST Výstup F2
Firmwarový projekt SoftConsole
Vyvolejte projekt SoftConsole pomocí samostatného IDE SoftConsole. Pro referenční návrh se používají následující verze zásobníku:
- lwIP TCP nebo IP stack verze 1.3.2
- Modbus TCP server verze 1.5 (www.freemodbus.org) s vylepšeními pro kompletní podporu funkčního kódu jako Modbus TCP server
- FreeRTOS (www.freertos.org)
Následující obrázek ukazuje adresářovou strukturu návrhu zásobníků softwaru SoftConsole.
Obrázek 6 • Okno SoftConsole Project Explorer
Pracovní prostor SoftConsole se skládá z projektu Modbus_TCP_App, který má aplikaci Modbus TCP (která používá lwIP a FreeRTOS) a všechny vrstvy abstrakce firmwaru a hardwaru, které odpovídají návrhu hardwaru.
Následující obrázek ukazuje verze ovladače použité pro demo.
Obrázek 7 • Ukázkové verze ovladače návrhu
Nastavení demo designu
Následující kroky popisují, jak nastavit demo pro desku SmartFusion2 Advanced Development Kit:
- Připojte hostitelský počítač ke konektoru J33 pomocí kabelu USB A na mini-B. Ovladače můstku USB na univerzální asynchronní přijímač/vysílač (UART) jsou detekovány automaticky.
- Ze čtyř detekovaných komunikačních (COM) portů klikněte pravým tlačítkem na kterýkoli z COM portů a vyberte Vlastnosti. Zobrazí se okno vlastností vybraného portu COM, jak je znázorněno na následujícím obrázku.
- Ujistěte se, že máte umístění jako na USB FP5 Serial Converter C v okně Vlastnosti, jak je znázorněno na následujícím obrázku.
Poznámka: Poznamenejte si číslo COM portu pro konfiguraci sériového portu a ujistěte se, že umístění COM portu je specifikováno jako na USB FP5 Serial Converter C.
Obrázek 8 • Okno Správce zařízení
- Pokud nejsou ovladače USB rozpoznány automaticky, nainstalujte ovladač USB.
- Nainstalujte ovladač FTDI D2XX pro sériovou terminálovou komunikaci prostřednictvím kabelu FTDI mini USB. Stáhněte si ovladače a průvodce instalací z:
www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip - Připojte propojky na desce SmartFusion2 Advanced Development Kit, jak je znázorněno v následující tabulce. Informace o umístění propojek naleznete v Příloze: Umístění propojek, strana 19.
POZOR: Před propojením propojek vypněte vypínač napájení SW7.
Tabulka 6 • Nastavení propojky SmartFusion2 Advanced Development Kit
- Jumper Pin Od kolíku ke komentářům
- J116, J353, J354, J54 1 2 Toto jsou výchozí nastavení propojek desky Advanced Development Kit. Ujistěte se, že propojky
- J123 2 3 jsou nastaveny odpovídajícím způsobem.
- J124, J121, J32 1 2 JTAG programování přes FTDI
- Připojte napájecí zdroj ke konektoru J42 na desce SmartFusion2 Advanced Development Kit.
- Tento design exampSoubor může běžet v režimu statické IP i dynamické IP. Ve výchozím nastavení programování files jsou k dispozici pro dynamický režim IP.
- Pro statickou IP připojte hostitelský počítač ke konektoru J21 na
Deska SmartFusion2 Advanced Development Kit pomocí kabelu RJ45. - Pro dynamickou IP připojte kterýkoli z otevřených síťových portů ke konektoru J21 na desce SmartFusion2 Advanced Development Kit pomocí kabelu RJ45.
- Pro statickou IP připojte hostitelský počítač ke konektoru J21 na
Snímek nastavení desky
Snímky desky SmartFusion2 Advanced Development Kit se všemi připojeními nastavení jsou uvedeny v příloze: Nastavení desky pro spuštění referenčního návrhu Modbus TCP, strana 18.
Spuštění ukázkového návrhu
Následující kroky popisují, jak spustit návrh ukázky:
- Stáhněte si design file z:
http://soc.microsemi.com/download/rsc/?f=m2s_dg0440_liberov11p8_df - Zapněte vypínač napájení SW7.
- Spusťte jakýkoli program pro emulaci sériového terminálu, například:
- HyperTerminal
- Tmel
- TeraTerm
Poznámka: V této ukázce je použit HyperTerminal.
Konfigurace programu je: - Přenosová rychlost: 115200
- 8 datových bitů
- 1 Stop bit
- Žádná parita
- Žádná regulace průtoku
Informace o konfiguraci programů pro emulaci sériového terminálu naleznete v části Konfigurace programů pro emulaci sériového terminálu.
- Spusťte software FlashPro.
- Klepněte na Nový projekt.
- V okně Nový projekt zadejte Název projektu, jak je znázorněno na následujícím obrázku.
Obrázek 9 • Nový projekt FlashPro
- Klikněte na Procházet a přejděte do umístění, kam chcete projekt uložit.
- Vyberte Single device jako režim programování.
- Klepnutím na OK uložte projekt.
- Klepněte na tlačítko Konfigurovat zařízení.
- Klikněte na Procházet a přejděte do umístění, kde je Modbus_TCP_top.stp file se nachází a vyberte file. Výchozí umístění je:
(\SF2_Modbus_TCP_Ref_Design_DF\Programmingfile\Modbus_TCP_top.stp). Požadované programování file je vybrán a je připraven k naprogramování v zařízení, jak je znázorněno na následujícím obrázku.
Obrázek 10 • Projekt FlashPro nakonfigurován
- Kliknutím na PROGRAM zahájíte programování zařízení. Počkejte, dokud se nezobrazí zpráva oznamující, že program prošel. Tato ukázka vyžaduje, aby zařízení SmartFusion2 bylo předem naprogramováno s kódem aplikace pro aktivaci aplikace Modbus. Zařízení SmartFusion2 je předem naprogramováno pomocí Modbus_TCP_top.stp pomocí softwaru FlashPro.
Obrázek 11 • Program FlashPro prošel
Poznámka: Chcete-li spustit návrh v režimu statické IP, postupujte podle kroků uvedených v Dodatek: Spuštění návrhu v režimu statické IP, strana 20.
- Vypněte a zapněte desku SmartFusion2 Advanced Development.
V okně HyperTerminal se zobrazí uvítací zpráva s adresou IP, jak je znázorněno na následujícím obrázku.
Obrázek 12 • HyperTerminal s IP adresou
Otevřete nový příkazový řádek na hostitelském počítači, přejděte do složky
(\SF2_Modbus_TCP_Ref_Design_DF\HostTool) kde
SmartFusion2_Modbus_TCP_Client.exe file je přítomen, zadejte příkaz: SmartFusion2_Modbus_TCP_Client.exe jak je znázorněno na následujícím obrázku.
Obrázek 13 • Vyvolání klienta Modbus
Následující obrázek ukazuje funkce Modbus TCP, které jsou spuštěny. Funkce jsou:
- Čtení diskrétních vstupů (kód funkce 02)
- Čtení přídržných registrů (kód funkce 03)
- Čtení vstupních registrů (kód funkce 04)
- Zápis více cívek (kód funkce 15)
Obrázek 14 • Ukázka funkčních kódů Modbus
Viz Spuštění funkcí Modbus, strana 17, kde najdete další informace o funkcích Modbus, které jsou uvedeny v referenčním návrhu.
- Po spuštění ukázky zavřete HyperTerminal.
Spouštění funkcí Modbus
Tato část popisuje funkce Modbus, které jsou demonstrovány v referenčním návrhu.
Čtení diskrétních vstupů (kód funkce 02)
GPIO jsou připojeny ke 4 DIP přepínačům a 4 tlačítkovým přepínačům. Zapněte a vypněte DIP přepínače a tlačítkové přepínače na SmartFusion2 Advanced Development Kit. Číst funkční kód diskrétních vstupů zobrazuje stavy spínačů, jak je znázorněno na následujícím obrázku.
Obrázek 15 • Čtení diskrétních vstupů
Čtení registrů (kód funkce 03)
Následující obrázek ukazuje data globální vyrovnávací paměti definovaná ve firmwaru.
Obrázek 16 • Čtení uchovávacích registrů
Čtení vstupních registrů (kód funkce 04)
Následující obrázek ukazuje počet sekund, které počítadlo v reálném čase (RTC) napočítalo.
Obrázek 17 • Čtení vstupních registrů
Zápis více cívek (kód funkce 0×0F)
Následující obrázek ukazuje data registru Write Multiple Coils pro přepínání LED připojených k GPIO.
Obrázek 18 • Zápis více cívek
Dodatek: Nastavení desky pro spuštění referenčního návrhu Modbus TCP
Následující obrázek ukazuje nastavení desky pro spuštění referenčního návrhu na desce SmartFusion2 Advanced Development Kit.
Obrázek 19 • Nastavení desky sady SmartFusion2 Advanced Development Kit
Dodatek: Umístění propojek
Následující obrázek ukazuje umístění propojek na desce SmartFusion2 Advanced Development Kit.
Obrázek 20 • Sítotisková horní část SmartFusion2 Advanced Development Kit View
Poznámka: Červeně zvýrazněné propojky jsou standardně nastaveny. Propojky zvýrazněné zeleně je nutné nastavit ručně.
Poznámka: Umístění propojek na předchozím obrázku lze vyhledat.
Dodatek: Spuštění návrhu v režimu statické IP
Následující kroky popisují, jak spustit návrh v režimu statické IP:
- Klepněte pravým tlačítkem na okno Project Explorer projektu SoftConsole a přejděte na Vlastnosti, jak je znázorněno na následujícím obrázku.
Obrázek 21 • Okno Project Explorer projektu SoftConsole
- Odstraňte symbol NET_USE_DHCP v Nastavení nástrojů v okně Vlastnosti pro Modbus_TCP_App. Následující obrázek ukazuje okno Vlastnosti pro Modbus_TCP_App.
Obrázek 22 • Okno Vlastnosti Průzkumníka projektu
- Pokud je zařízení připojeno v režimu statické IP adresy, statická IP adresa desky je 169.254.1.23, poté změňte nastavení hostitelského TCP/IP tak, aby odrážela IP adresu. Viz následující obrázek a obrázek 24,
Obrázek 23 • Nastavení TCP/IP hostitelského počítače
Obrázek 24 • Nastavení statické IP adresy
Poznámka: Když jsou tato nastavení nakonfigurována, zkompilujte návrh, načtěte návrh do paměti Flash a spusťte návrh pomocí SoftConsole.
DG0440 Demo Guide Revize 7.0
Dokumenty / zdroje
![]() |
Microsemi DG0440 Spuštění referenčního návrhu Modbus TCP na zařízeních SmartFusion2 [pdfUživatelská příručka DG0440 Spuštění referenčního návrhu Modbus TCP na zařízeních SmartFusion2, DG0440, spuštění referenčního návrhu Modbus TCP na zařízeních SmartFusion2, návrh na zařízení SmartFusion2 |