Microsemi DG0440 Running Modbus TCP Reference Design на уреди SmartFusion2
Седиштето на корпоративното „Микросеми“.
One Enterprise, Алисо Виехо,
Калифорнија 92656 САД
Во рамките на САД: +1 800-713-4113
Надвор од САД: +1 949-380-6100
Факс: +1 949-215-4996
Е-пошта: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Сите права се задржани. Microsemi и логото на Microsemi се заштитни знаци на Microsemi Corporation. Сите други заштитни знаци и услужни марки се сопственост на нивните соодветни сопственици
Microsemi не дава никаква гаранција, претставување или гаранција во врска со информациите содржани овде или соодветноста на неговите производи и услуги за која било одредена цел, ниту пак Microsemi презема каква било одговорност што произлегува од примената или употребата на кој било производ или коло. Производите што се продаваат подолу и сите други производи што ги продава Microsemi биле предмет на ограничено тестирање и не треба да се користат заедно со опрема или апликации кои се критични за мисијата. Се верува дека сите спецификации за изведба се сигурни, но не се потврдени, а Купувачот мора да ги спроведе и заврши сите перформанси и други тестови на производите, сам и заедно со, или инсталиран во, кој било крајен производ. Купувачот нема да се потпира на какви било податоци и спецификации или параметри за перформанси обезбедени од Microsemi. Одговорност на Купувачот е самостојно да ја утврди соодветноста на кој било производ и истите да ги тестира и потврди. Информациите дадени од Microsemi подолу се дадени „како што е, каде што е“ и со сите грешки, а целиот ризик поврзан со таквите информации е целосно кај Купувачот. Microsemi не дава, експлицитно или имплицитно, на која било страна никакви патентни права, лиценци или други права на ИС, без разлика дали се однесуваат на самите тие информации или што било опишано со таквите информации. Информациите дадени во овој документ се сопственост на Microsemi, а Microsemi го задржува правото да прави какви било промени на информациите во овој документ или на сите производи и услуги во секое време без претходна најава.
За Микросеми
Microsemi Corporation (Nasdaq: MSCC) нуди сеопфатно портфолио на полупроводнички и системски решенија за воздушната и одбраната, комуникациите, центарот за податоци и индустриските пазари. Производите вклучуваат аналогни интегрирани кола со мешан сигнал со високи перформанси и стврднати со зрачење, FPGA, SoC и ASIC; производи за управување со енергија; уреди за тајминг и синхронизација и прецизни временски решенија, поставувајќи ги светските стандарди за времето; уреди за обработка на глас; RF решенија; дискретни компоненти; претпријатија за складирање и комуникациски решенија, безбедносни технологии и скалабилни анти-тamper производи; Етернет решенија; ИЦ и средни распони со напојување преку етернет; како и можности и услуги прилагодено за дизајн. Микросеми е со седиште во Алисо Виехо, Калифорнија и има приближно 4,800 вработени на глобално ниво. Дознајте повеќе на www.microsemi.com.
Историја на ревизии
Историјата на ревизии ги опишува промените што беа имплементирани во документот. Промените се наведени со ревизија, почнувајќи од најактуелната публикација.
Ревизија 7.0
Ажуриран е документот за изданието на софтверот Libero v11.8.
Ревизија 6.0
Следниве промени се направени во ревизијата 6.0 на овој документ.
- Барањата за дизајн на Libero SoC, FlashPro и SoftConsole се ажурирани во Барањата за дизајн, страница 5.
- Во текот на упатството, имињата на проектите на SoftConsole користени во демо-дизајнот и сите придружни фигури се ажурирани.
Ревизија 5.0
Ажуриран е документот за изданието на софтверот Libero v11.7 (SAR 76559).
Ревизија 4.0
Ажуриран е документот за изданието на софтверот Libero v11.6 (SAR 72924).
Ревизија 3.0
Ажуриран е документот за изданието на софтверот Libero v11.5 (SAR 63972).
Ревизија 2.0
Ажуриран е документот за изданието на софтверот Libero v11.3 (SAR 56538).
Ревизија 1.0
Ажуриран е документот за изданието на софтверот Libero v11.2 (SAR 53221).
Извршување на референтен дизајн на Modbus TCP на уреди SmartFusion2 кои користат IwIP и FreeRTOS
Вовед
Microsemi нуди референтен дизајн за SmartFusion®2 SoC FPGA уреди кои го демонстрираат
три-брзински етернет контролер за среден пристап (TSEMAC) карактеристики на SmartFusion2 SoC FPGA и го имплементира протоколот Modbus. Референтниот дизајн работи на UG0557: SmartFusion2 SoC FPGA Advanced Development Kit Упатство за употреба. Овој демо водич опишува.
- Употреба на SmartFusion2 TSEMAC поврзан со сериски гигабитен медиумски независен интерфејс (SGMII) PHY.
- Интеграција на двигателот SmartFusion2 MAC со лесниот протокол за контрола на пренос на IP (IwIP) (TCP) или стек IP и бесплатниот оперативен систем во реално време (RTOS).
- Слој на апликација со протокол за индустриска автоматизација, Modbus на TCP или IP.
- Како да се изврши референтниот дизајн
Потсистемот на микроконтролерот (MSS) на SmartFusion2 SoC FPGA има примерок од периферниот уред TSEMAC. TSEMAC може да се конфигурира помеѓу процесорот домаќин и етернет мрежата со следните стапки на пренос на податоци (брзини на линија):
- 10 Mbps
- 100 Mbps
- 1000 Mbps
За повеќе информации за интерфејсот TSEMAC за уредите SmartFusion2, видете го Упатството за употреба на потсистем за микроконтролер за микроконтролер UG0331: SmartFusion2.
Користење на протоколот Modbus
Modbus е протокол за пораки со апликациски слој присутен на седмото ниво на
модел за интерконекција на отворени системи (OSI). Овозможува комуникација со клиент или сервер помеѓу уредите поврзани во различни типови автобуси или мрежи. Тоа е сервисен протокол кој нуди многу услуги наведени со функционалните кодови. Кодовите на функцијата Modbus се елементи на податочните единици на протоколот за барање или одговор на Modbus. Компонентите на протоколот Modbus вклучуваат:
- TCP или IP преку етернет
- Асинхрони сериски пренос преку различни медиуми
- Жица:
- EIA/TIA-232-E
- ОВЖС-422
- EIA/TIA-485-A Влакна
- Радио
- Модбус ПЛУС, мрежа за пренесување на токени со голема брзина
Следната слика ги опишува комуникациските стекови на Modbus за различни комуникациски мрежи.
Слика 1 • Стак за комуникација на Modbus
Користење на протоколот Modbus на уредот SmartFusion2
Серверот Modbus TCP работи на комплетот за напреден развој SmartFusion2 и одговара на клиентот Modbus TCP кој работи на компјутерот домаќин. Следната слика го прикажува блок дијаграмот на Modbus TCP серверот и апликацијата на уредот SmartFusion2.
Слика 2 • Блок дијаграм на Modbus TCP сервер и апликација на SmartFusion2
0RGEXV 7&3 $SSOLFDWLRQ | 0RGEXV 7&3 6HUYHU |
,Z,3 7&3 RU ,3 6WDFN | |
) UHH5726 | )ЛУПЗДУХ |
6PDUW)XVLRQ2 $GYDQFHG 'HYHORSPHQW .LW (+:) |
Барања за дизајн
Следната табела ги наведува барањата за дизајн на хардвер и софтвер.
Табела 1 • Барања и детали за референтен дизајн
Барања за дизајн: Опис
Хардвер
- Комплет за напреден развој SmartFusion2
– USB A до mini-B кабел
– 12 V адаптер
Rev A или подоцна - Етернет кабел RJ45
- Било која од следниве програми за емулација на сериски терминал:
– Хипертерминал
– ТераТерм
– КИТ - Домаќин на компјутер или лаптоп Windows 64-битен оперативен систем
Софтвер
- Libero® System-on-Chip (SoC) v11.8
- SoftConsole v4.0
- Програмски софтвер FlashPro v11.8
- USB кон UART драјвери -
- MSS Ethernet MAC драјвери v3.1.100
- Програма за емулација на сериски терминал HyperTerminal, TeraTerm или PuTTY
- Прелистувач Mozilla Firefox или Internet Explorer
Демо дизајн
Следните делови го опишуваат демо-дизајнот на референтниот дизајн на Modbus TCP на уредите SmartFusion2 кои користат IwIP и FreeRTOS.
Демо дизајн files се достапни за преземање на:
http://soc.microsemi.com/download/rsc/?f=m2s_dg0440_liberov11p8_df
Демо дизајн fileи вклучуваат:
- Либеро
- Програмирање files
- HostTool
- Читај ме
На следната слика е прикажана структурата на дизајнот на највисоко ниво fileс. За повеќе информации, видете Readme.txt file.
Слика 3 • Демо дизајн FileСтруктура на највисоко ниво
Карактеристики на демо дизајн
Референтниот дизајн вклучува:
- Завршете го проектот Libero SoC Verilog
- Проект за фирмвер на SoftConsole
Референтниот дизајн може да ги поддржи следните функционални кодови на Modbus во зависност од поставките за бесплатниот стек за комуникација на Modbus:
- Читање на влезните регистри (код на функција 0×04)
- Читање на регистри за задржување (код на функција 0×03)
- Напишете единечни регистри (код на функција 0×06)
- Напишете повеќе регистри (код на функција 0×10)
- Читање или запишување повеќе регистри (код на функција 0×17)
- Читање на намотки (функциски код 0×01)
- Напишете единечна калем (функциска шифра 0×05)
- Напишете повеќе намотки (код на функција 0×0F)
- Читање на дискретни влезови (шифра на функција (0×02)
Референтниот дизајн ги поддржува следните функционални кодови на Modbus за сите бесплатни поставки за стек за комуникација на Modbus:
- Читање на влезните регистри (код на функција 0×04)
- Читање на дискретни влезови (шифра на функција (0×02)
- Напишете повеќе намотки (код на функција 0×0F)
- Читање на регистри за задржување (код на функција 0×03)
Опис на демо дизајн
Дизајнот е имплементиран со помош на интерфејс SGMII PHY со конфигурирање на TSEMAC за операцијата на десет-битен интерфејс (TBI). За повеќе информации за интерфејсот TSEMAC TBI, видете го Упатството за употреба на потсистем за микроконтролер за микроконтролер UG0331: SmartFusion2.
Хардверски проект Libero SoC
Следната слика ја прикажува имплементацијата на дизајнот на хардверот на кој работи фирмверот за референтниот дизајн.
Слика 4 • Дизајн на хардвер од највисоко ниво на Libero SoC
Хардверскиот проект Libero SoC ги користи следните ресурси и IP-адреси на SmartFusion2 MSS:
- TSEMAC TBI интерфејс
- MMUART_0 за RS-232 комуникации на комплетот за напреден развој SmartFusion2
- Посветена влезна подлога 0 како извор на часовник
- Влез и излез за општа намена (GPIO) што го поврзува следново:
- Светлосни диоди (LED): 4 броеви
- Копчиња за притискање: 4 броја
- Прекинувачи со двоен пакет (DIP): 4 броја
- Следниве ресурси на таблата се поврзани со командите на Modbus:
- LED диоди (намотки)
- DIP прекинувачи (дискретни влезови)
- Копчиња со притискање (дискретни влезови)
- Часовник во реално време (RTC) (влезни регистри)
- Сериски интерфејс со голема брзина (SERDESIF) SERDES_IF IP, конфигуриран за SERDESIF_3 EPCS лента 3, видете ја следната слика. За да дознаете повеќе за сериските интерфејси со голема брзина, видете го упатството за употреба UG0447- SmartFusion2 и IGLOO2 FPGA за сериски интерфејси со голема брзина.
Следната слика го прикажува прозорецот Конфигуратор на сериски интерфејс со голема брзина.
Слика 5 • Прозорец за конфигуратор на сериски интерфејс со голема брзина
Доделувања на иглички на пакети
Доделувањето на пиновите на пакетот за LED, DIP прекинувачи, прекинувачи со копчиња и сигнали за интерфејс PHY се прикажани во следната табела преку Табела 5, страница 9.
Табела 2 • Доделувања на иглички од LED до пакети
- Пин на излезен пакет
- LED_1 D26
- LED_2 F26
- LED_3 A27
- LED_4 C26
Табела 3 • DIP префрлува на Доделувања на иглички на пакети
- Пин на излезен пакет
- DIP1 F25
- DIP2 G25
- DIP3 J23
- DIP4 J22
Табела 4 • Копчето со притискање се префрла на Доделувања на иглички на пакети
- Пин на излезен пакет
- СКЛУЧУВАЧ1 J25
- СКЛУЧУВАЧ2 H25
- СКЛУЧУВАЧ3 J24
- СКЛУЧУВАЧ4 H23
Табела 5 • Сигнали за интерфејс PHY до задачи за иглички на пакети
- Име на порта Пин на пакетот за насока
- PHY_MDC Излез F3
- PHY_MDIO Влез K7
- PHY_RST Излез F2
Проект за фирмвер на SoftConsole
Повикајте го проектот SoftConsole користејќи самостојна SoftConsole IDE. Следниве верзии на оџакот се користат за референтниот дизајн:
- lwIP TCP или IP стек верзија 1.3.2
- Modbus TCP сервер верзија 1.5 (www.freemodbus.org) со подобрувања за целосна поддршка на функционалниот код како Modbus TCP сервер
- FreeRTOS (www.freertos.org)
Следната слика ја прикажува структурата на дизајнот на директориумот на софтверот SoftConsole.
Слика 6 • Прозорец на SoftConsole Project Explorer
Работниот простор на SoftConsole се состои од проектот, Modbus_TCP_App што ја има апликацијата Modbus TCP (која користи lwIP и FreeRTOS) и сите слоеви за апстракција на фирмверот и хардверот што одговараат на дизајнот на хардверот.
Следната слика ги прикажува верзиите на драјверите што се користат за демо.
Слика 7 • Верзии на драјвер за демо дизајн
Поставување на демо дизајн
Следниве чекори опишуваат како да го поставите демото за плочката SmartFusion2 Advanced Development Kit:
- Поврзете го компјутерот-домаќин со приклучокот J33 со помош на кабелот USB A до mini-B. Автоматски се откриваат двигатели на мостот USB кон универзален асинхрон приемник/предавател (UART).
- Од откриените четири порти за комуникација (COM), кликнете со десното копче на која било од COM портите и изберете Својства. Се прикажува избраниот прозорец со својства на COM портата, како што е прикажано на следната слика.
- Погрижете се да ја имате локацијата како на USB FP5 серискиот конвертор C во прозорецот Својства како што е прикажано на следната слика.
Забелешка: Забележете го бројот на COM портата за конфигурација на сериската порта и уверете се дека локацијата на COM портата е наведена како на USB FP5 серискиот конвертер C.
Слика 8 • Прозорец за управување со уреди
- Инсталирајте го USB-двигателот ако USB-двигателите не се откријат автоматски.
- Инсталирајте го двигателот FTDI D2XX за сериска терминална комуникација преку FTDI мини USB-кабелот. Преземете ги драјверите и водичот за инсталација од:
www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip - Поврзете ги џемперите на плочката SmartFusion2 Advanced Development Kit како што е прикажано во следната табела. За информации за локациите на џемпери, видете го Додатокот: Локации на џемпери, страница 19.
ВНИМАНИЕ: Исклучете го прекинувачот за напојување, SW7, пред да ги направите приклучоците на скокачот.
Табела 6 • Поставки за скокач за напреден комплет за развој SmartFusion2
- Скокач игла од пин до коментари
- J116, J353, J354,J54 1 2 Ова се стандардните поставки за скокач на плочката Advanced Development Kit. Осигурете се дека џемперите
- J123 2 3 се поставени соодветно.
- J124, J121, J32 1 2 JTAG програмирање преку FTDI
- Поврзете го напојувањето со приклучокот J42 во плочката SmartFusion2 Advanced Development Kit.
- Овој дизајн прampможе да работи и во статичка IP и во динамична IP режими. Стандардно, програмирање files се обезбедени за динамичен IP режим.
- За статичка IP, поврзете го компјутерот-домаќин со J21 конекторот на
Табла SmartFusion2 Advanced Development Kit со помош на кабел RJ45. - За динамична IP адреса, поврзете која било од отворените мрежни порти на J21 конекторот на плочката SmartFusion2 Advanced Development Kit со помош на кабел RJ45.
- За статичка IP, поврзете го компјутерот-домаќин со J21 конекторот на
Снимка за поставување табла
Слики од плочката SmartFusion2 Advanced Development Kit со сите конекции за поставување се дадени во Додаток: Поставување плочка за извршување на дизајнот на референци на Modbus TCP, страница 18.
Водење на демо дизајн
Следниве чекори опишуваат како да се изврши демо-дизајнот:
- Преземете го дизајнот file од:
http://soc.microsemi.com/download/rsc/?f=m2s_dg0440_liberov11p8_df - ВКЛУЧЕТЕ го прекинувачот за напојување, SW7.
- Стартувајте која било програма за емулација на сериски терминал како што се:
- Хипертерминал
- КИТ
- ТераТерм
Забелешка: во оваа демо се користи HyperTerminal.
Конфигурацијата за програмата е: - Стапка на бауд: 115200
- 8 податочни битови
- 1 Стоп малку
- Без паритет
- Нема контрола на протокот
За информации за конфигурирање на програми за емулација на сериски терминал, видете во Конфигурирање на програми за емулација на сериски терминал.
- Стартувајте го софтверот FlashPro.
- Кликнете Нов проект.
- Во прозорецот Нов проект, внесете го името на проектот, како што е прикажано на следната слика.
Слика 9 • FlashPro Нов проект
- Кликнете на Прелистување и одете до локацијата каде што сакате да го зачувате проектот.
- Изберете Еден уред како режим на програмирање.
- Кликнете OK за да го зачувате проектот.
- Кликнете Конфигурирај уред.
- Кликнете на Прелистување и одете до локацијата каде што е Modbus_TCP_top.stp file се наоѓа и изберете го file. Стандардната локација е:
(\SF2_Modbus_TCP_Ref_Design_DF\Програмирањеfile\Modbus_TCP_top.stp). Потребното програмирање file се избира и е подготвен да се програмира во уредот како што е прикажано на следната слика.
Слика 10 • Проектот FlashPro е конфигуриран
- Кликнете ПРОГРАМА за да започнете со програмирање на уредот. Почекајте додека не се прикаже порака што покажува дека програмата поминала. Оваа демонстрација бара уредот SmartFusion2 да биде претходно програмиран со кодот на апликацијата за да се активира апликацијата Modbus. Уредот SmartFusion2 е претходно програмиран со Modbus_TCP_top.stp со помош на софтверот FlashPro.
Слика 11 • Програмата FlashPro помина
Забелешка: За да го извршите дизајнот во статичен IP режим, следете ги чекорите споменати во Додаток: Извршување на дизајнот во статичен IP режим, страница 20.
- Циклус на напојување на плочката SmartFusion2 Advanced Development.
Порака за добредојде со IP адресата се прикажува во прозорецот HyperTerminal, како што е прикажано на следната слика.
Слика 12 • Хипертерминал со IP адреса
Отворете нова командна линија на компјутерот домаќин, одете во папката
(\SF2_Modbus_TCP_Ref_Design_DF\HostTool) каде
SmartFusion2_Modbus_TCP_Client.exe file е присутна, внесете ја командата: SmartFusion2_Modbus_TCP_Client.exe како што е прикажано на следната слика.
Слика 13 • Повикување на клиентот Modbus
Следната слика ги прикажува функциите на Modbus TCP што работат. Функциите се:
- Читање на дискретни влезови (код на функција 02)
- Читање на регистри за задржување (шифра на функција 03)
- Читање на влезните регистри (код на функција 04)
- Напишете повеќе намотки (код на функција 15)
Слика 14 • Демонстрација на функционални кодови на Modbus
Видете ги Работните функции на Modbus, страница 17 за повеќе информации за функциите на Modbus што се прикажани во референтниот дизајн.
- Откако ќе ја извршите демонстрацијата, затворете го HyperTerminal.
Вклучување на функции на Modbus
Овој дел ги опишува функциите на Modbus кои се прикажани во референтниот дизајн.
Читање на дискретни влезови (код на функција 02)
GPIO се поврзани со 4 DIP прекинувачи и 4 прекинувачи со копчиња. Вклучете ги и исклучете ги DIP-прекинувачите и прекинувачите со копчиња на комплетот за напреден развој SmartFusion2. Функционалниот код за читање дискретни влезови ги прикажува статусите на прекинувачите како што е прикажано на следната слика.
Слика 15 • Читање на дискретни влезови
Читање на регистри за задржување (код на функција 03)
Следната слика ги прикажува глобалните податоци за баферот дефинирани во фирмверот.
Слика 16 • Читање на регистри за задржување
Читање на влезни регистри (код на функција 04)
Следната слика го прикажува бројот на секунди што ги броел бројачот во реално време (RTC).
Слика 17 • Читање на влезните регистри
Напишете повеќе намотки (функциски код 0×0F)
Следната слика ги прикажува податоците од регистарот Write Multiple Coils за префрлување на LED диоди поврзани со GPIO.
Слика 18 • Напишете повеќе намотки
Додаток: Поставување плочка за водење на дизајнот на референци на Modbus TCP
На следната слика е прикажано поставувањето на таблата за извршување на референтниот дизајн на плочката SmartFusion2 Advanced Development Kit.
Слика 19 • Поставување плочка на комплет за напреден развој SmartFusion2
Додаток: Локации на скокачи
Следната слика ги прикажува локациите на скокачите на плочката SmartFusion2 Advanced Development Kit.
Слика 20 • Комплет за напреден развој SmartFusion2 Silkscreen Top View
Забелешка: Скокачите означени со црвено се стандардно поставени. Скокачите означени со зелено мора да се постават рачно.
Забелешка: Локацијата на џемперите на претходната слика може да се пребарува.
Додаток: Извршување на дизајнот во Статички IP режим
Следниве чекори опишуваат како да се изврши дизајнот во статичен IP режим:
- Кликнете со десното копче на прозорецот Project Explorer на проектот SoftConsole и одете во Својства како што е прикажано на следната слика.
Слика 21 • Прозорец на Project Explorer на проектот SoftConsole
- Отстранете го симболот NET_USE_DHCP во Поставки за алатки на прозорецот Properties for Modbus_TCP_App. На следната слика е прикажан прозорецот Properties for Modbus_TCP_App.
Слика 22 • Прозорец со својства на Project Explorer
- Ако уредот е поврзан во статичен IP режим, статичната IP адреса на плочата е 169.254.1.23, а потоа променете ги поставките на Host TCP/IP за да ја одразуваат IP адресата. Видете ја следната слика и слика 24,
Слика 23 • Поставки за TCP/IP на компјутерот домаќин
Слика 24 • Поставки за статична IP адреса
Забелешка: Кога овие поставки се конфигурирани, компајлирајте го дизајнот, вчитајте го дизајнот во Flash меморија и стартувајте го дизајнот користејќи SoftConsole.
DG0440 Демо Водич Ревизија 7.0
Документи / ресурси
![]() |
Microsemi DG0440 Running Modbus TCP Reference Design на уреди SmartFusion2 [pdf] Упатство за корисникот DG0440 Running Modbus TCP Reference Design на SmartFusion2 Devices, DG0440, Running Modbus TCP Reference Design на SmartFusion2 Devices, Design на SmartFusion2 Devices |