LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to program a SoM sbRIO-9651

Solved!
Go to solution
 

I have opened a thread here:

 

https://forums.ni.com/t5/Instrument-Control-GPIB-Serial/sbrio-9651-to-PC-Ethernet-Communication/td-p...

 

Regarding ethernet communication between a windows PC and a SoM sbRIO-9651.

 

I have been trying to utilise the sbRIO-9651, but programming an embedded system seems a bit more complex than programming a cdaq.

 

I have only sat core 1 and 2, so haven't sat the FPGA course.

 

I have been following the following link to get me started, and used the help in LabVIEW to try and understand  how programming an NI embedded system device works, but finding it a little confusing.

 

https://www.ni.com/docs/en-US/bundle/373197l/page/download.html

 

Any advice or articles to help me will be good. Before I think about completing my project of ethernet communication, I want to start by getting to grips with NI Embedded Systems devices.

0 Kudos
Message 1 of 28
(6,213 Views)
Solution
Accepted by topic author David-Baratheon

The SoM, despite the different form factor is essentially the same as other CompactRIO/Single-Board RIO devices - there are lots of guides/tutorials for getting started with those.

 

Put "getting started with compactrio" into Google and you should find some tutorials/papers on how they work and how to get started with programming them (e.g. RT / FPGA). There are tutorials on how to configure the RIO so you can connect to it and discover it from LabVIEW (e.g. through the ethernet port) and also tutorials which take you through creating an embedded systems project and programming the FPGA/RT and Host PC side.

 

I'd also have a look for the "LabVIEW FPGA Control for CompactRIO Sample Project" - there's a document that discusses different methods of communication between the RT and Host side.

 

I'd also recommend the "Build Your Own Embedded System" course if you can find it in your area (contact your local NI Sales office) - http://www.ni.com/build-your-own-embedded-system/ 

For the cost of the sbRIO evaluation kit you get a 1 day course in programming cRIOs and you get to keep the evaluation kit at the end! It's a really useful course to get started with RIO controllers!

 

The second link you posted about component-level IP isn't really going to help you!

 


LabVIEW Champion, CLA, CLED, CTD
(blog)
Message 2 of 28
(6,198 Views)

Unfortunately I only have two weeks to complete this project so attending courses isn't feasable. I would like to attend courses in future though.

 

I will have a look through the tutorials you provided and see if I can figure out from those how to achieve my objectives.

 

0 Kudos
Message 3 of 28
(6,180 Views)

What is the difference between SoM and any other device? The NI site has generic stuff about the benefits of graphical programming etc but I can't see what differentiates System on Module from any other NI embedded system

 

https://www.ni.com/en-us/support/model.sbrio-9651.html

0 Kudos
Message 4 of 28
(6,164 Views)
Solution
Accepted by topic author David-Baratheon

Do you have the SOM OEM kit that you linked to or the Development Kit?

 

https://www.ni.com/en-us/support/model.sbrio-9651.html

 

A big difference between the SOM and other Single Board RIO targets we sell is that other devices will have a set of preconfigured I/O with which you can interact with the FPGA.  The SOM gives you that ability to define what you want the inputs and outputs should be using the CLIP Generator that you have linked.

 

I agree with Sam that defining your own CLIP can get a bit tricky even with the CLIP Generator (especially with your short development schecdule) so if you do have the development kit I would recommend using the DevKit or DevKit2 CLIP declarations instead of messing around and configuring yours exactly how you want it.

Matt J | National Instruments | CLA
Message 5 of 28
(6,152 Views)

I have the SoM sbRIO-9651 with reference carrier board linked here:

 

https://www.ni.com/en/support/documentation/supplemental/15/ni-sbrio-9651-system-on-module-reference...

 

I have been trying to get a basic program running, like a push button input LED output 0 = 0,  1 = 1 type circuit to get started.

 

I seem to experience a few behaviours which are different to the CompactRIO tutorials though.

 

In MAX my hardware only appears in Devices and Interfaces and gives me no configuration options at all.

 

In the tutorials they are talking about ocnfiguring IP addresses in the remote systems section.

 

 

EDIT: Another difference, when I choose my hardware in the project area of LabVIEW, I don't get an option between real time and FPGA. It seems to automatically go to FPGA for me.

0 Kudos
Message 6 of 28
(6,146 Views)
Solution
Accepted by topic author David-Baratheon

cRIO / sbRIO / SoM are basically all the same architecture when it comes to the software - an RT controller and an FPGA.

 

The main differences are around the form-factor and how you connect your signals to it:

cRIO - is a larger ruggedised device that takes C-Series modules for inputs/outputs. They also come in FPGA-only versions.

sbRIO - is a board-level device that has more limited/fixed inputs/outputs (either all digital or some analogue I/O, CAN, Serial) or you create your own custom PCB but it has at least the basic functionality on the board as connectors (e.g. power, ethernet, USB)

SoM - is the most embedded device (and designed for high-volume applications) - it's about credit-card size, it cannot be used without an external PCB to break-out the power / digital IO pins and things like analogue inputs/outputs must be done on the external PCB.

 

There probably are some differences around configuring the devices (the SOM is pretty new, after all) - but these should be fairly minor - the principles will be the same.


LabVIEW Champion, CLA, CLED, CTD
(blog)
Message 7 of 28
(6,145 Views)

I have been trying to follow the tutorials but still struggling to configure the FPGA. I should be ok for LabVIEW code initially but could use some help with how to configure the FPGA so I have access to the I/Os and it will run my code.

0 Kudos
Message 8 of 28
(6,136 Views)
Solution
Accepted by topic author David-Baratheon

Which bit are you struggling with, specifically?

 

I don't have the SoM drivers installed so I can't give you the exact instructions but....

 

Create a project and add the SoM as a target (right click project New -> Targets & Devices).

 

 

You should be able to add the FPGA and then add your I/O under that (or add the reference board which might give you the lot?).

 

What do you see in the project now? Can you take a screenshot of the project window with the SoM?

 


LabVIEW Champion, CLA, CLED, CTD
(blog)
Message 9 of 28
(6,125 Views)

I have got as far as seeing the FPGA in my project folder. How do I add the I/Os?

 

 

RIO.png

0 Kudos
Message 10 of 28
(6,115 Views)