Using the Power of the Cloud in Test and Measurement
By Neil Forcier, Agilent Technologies
"The cloud" continues to become more and more pervasive in our everyday business and personal lives. Many people today use the cloud and do not even realize it. Gmail and Facebook, for example, are cloud-based services. The cloud, more formally known as cloud computing, refers to software, computation, and data storage/retrieval services, which from a user's perspective, happen somewhere out in the ether. Users don't need to know where the services are homed or how the services are provided.
The cloud model offers several benefits: We no longer have to worry about storage space or processing power because the cloud adjusts dynamically to satisfy these needs. Also, we can be confident that data is securely and safely backed up by the cloud service provider. But best of all, the cloud provides us with ubiquitous access to our data with devices like PCs, smart phones, and tablet computers. In this article, we will discuss how we can use the cloud to access test data and test system resources from anywhere, at any time.
In our global society, product design rarely moves from the drawing board to the manufacturing floor in the same geographical location. It is common for a product's hardware design to be developed in one country, its software design to be created in a second country, and its manufacturing to be completed in a third country. For this model to work well, team leaders often try to create a process that provides geographically separated team members real-time remote access to product test data, testing resources, and the ability to modify test system routines. If they are successful, they can avoid product delays and save money on test equipment. The cloud is a powerful tool for enabling this process.
In Figure 1 you will see a network model showing your access to the cloud and your test system’s access to the cloud. The brick wall represents a company’s network security. The wall blocks anything outside from starting a network conversation with anything inside, but it allows devices inside to start a conversation with outside entities, like the cloud.
Figure 1: Diagram of a test system accessing the cloud
The dotted line from the test system controller to the company network represents two different cases:
• Case 1: Companies where there is no problem connecting the test system to the company’s network.
• Case 2: Companies where you are not allowed to connect the test system to the company’s network.
In Case 1, engineers can program the test system to create test reports and store them on a network drive that can be accessed by anybody with the right permissions, regardless of geographical location. Remote access may be accomplished using a virtual private network (VPN). Case 1 allows fairly open access to test data and resources, but it still presents the following hurdles to ubiquitous access:
• If you are working with an original equipment manufacturer or contract manufacturer or are contracting a portion or all of the R&D work, it may not be feasible to allow employees of these firms to access files on your company’s network.
• Remote access using VPNs is often not very reliable and it slows down your connection. This is especially true if you are using a device like a tablet computer that is connected to the Internet via a cellular network.
In Case 1, to access test data or modify test parameters you must either be inside the company network or use a VPN to access it from outside. But notice your test system has access to the cloud since it is connected to the company network.
Case 2 is more restrictive. To share test data you must walk to the test system with a memory stick and transfer the data to a computer on the company network to email out or store the test data on a share drive. For test system control, you have to be physically at the test system. In Case 2, using the cloud would be even more useful since test data and the test resources cannot be accessed remotely, either inside or outside the company’s network.
For Case 2, we must first establish a way for the test system to access the cloud before we can continue. The best way to do this is by employing a cellular router and connecting the test system computer to the router either via WiFi or an Ethernet cable. A cellular router works just like the router you have at home except it uses a cellular data connection to access the cloud instead of an Ethernet connection. Of course, to use a cellular router you will need to purchase a USB mobile broadband device and set up a monthly data plan with a cellular provider. The cellular router will give your test system computer access to the cloud while still being totally separate from your company’s network.
Now that we have explored the benefits of using the cloud for test and discussed how we can connect our test system to the cloud, the next question is how we can use the cloud for sharing test data and test system control. The answer is to use secure cloud storage services such as Google Cloud Storage, Amazon S3, or Dropbox.
To demonstrate, let’s look at an example using Dropbox. Dropbox is a secure cloud storage service that allows you to store and back up files to the cloud. It also automatically syncs files and file changes from the cloud to any cloud-connected computer that is linked to that particular Dropbox account (accounts are password protected). To use it, you must first create a Dropbox account. From there, you download the Dropbox software onto your computer. The software creates a Dropbox folder that can be used like any other folder on your computer, except the software automatically syncs the contents of the folder securely to the cloud. When an edit is made to any of the contents of the folder, the updated contents are synchronized to the cloud. Also, any computer that is connected to the cloud and to the same Dropbox account will have the contents of its Dropbox folder automatically updated. This means you could start sharing your test data ubiquitously across the globe, whether you are inside or outside your company’s network. All you have to do is simply change the file path where the test system software writes test reports to the Dropbox folder.
Let's look at an example. I set up a simple environmental test using an Agilent 34972A DAQ/switch unit to monitor multiple measurements on a device under test (DUT). The measurements included temperature, voltage, fan speed, and irradiance. I created a simple program to configure and run the 34972A, collect the measurement data, and write it to an Excel spreadsheet in my Dropbox folder. The environmental test ran for 6 days, during which I went on a business trip to Japan. My test program was logging data to a spreadsheet stored in my Dropbox folder on an Internet-connected computer on my company’s network. Dropbox automatically synchronized the updated spreadsheet test data to the cloud. This allowed me to check on the data from my iPad via the Dropbox app and from my hotel in Japan using my laptop. Figure 2 shows a screen shot of a portion of the test data.
Figure 2. Test data spreadsheet from the cloud
This example illustrates how easily Dropbox or any other cloud storage service can be used to allow secure ubiquitous access to the test data from anywhere, but only to those that have access to that cloud storage account. To protect the data, cloud storage services allow the administrator of the account to assign read, write, and delete permissions to users.
Now let's explore how we can use cloud storage services to start and stop tests, change testing parameters, or alter tests. Let’s start by going back to the environmental test example. Notice the columns under the label “Temp Control” in Figure 2. Besides just writing measurements to the spreadsheet, the software also read the columns next to the “Fan” and “Heater” label (both shown as “ON” in Figure 2). The program used these parameters to control the temperature of the DUT’s environment.
Here is how it worked: Let’s say the heater is currently on and I want to turn it off. All I have to do is bring up the spreadsheet stored in the Dropbox folder and change the column next to “Heater” from “ON” to “OFF.” The program checks these parameters every minute. When one changes, it takes the appropriate actions using the output triggers on the 34972A. As you can see from the fluctuations in the temperature graph in Figure 2, the heater and fan were cycled multiple times remotely from across the Pacific. From this simple example it becomes evident how cloud storage services can also be used to start/stop tests, change test setting, and adjust test parameters by changing entries in a file. You could even alter test routines, create new test routines, and perform other complex actions remotely by creating a basic scripting language that communicates with your test system software. From there, place an “instructions” file in the cloud storage folder that your test system software routinely reads. It then implements any new instructions from the instructions file. This essentially gives anybody in your global design team, as long as they have write privileges, the ability to control a test system remotely.
Leveraging the power of the cloud provides your global product design and manufacturing team the ability to access testing data and test system resources remotely from anywhere. It does not matter if they are at home, at a different company, or across the globe at a café. The cloud gives you the ability to break free from the confines of your company’s network, especially restrictive environments where test systems must be isolated from the company network.
Posted by Janine E. Mooney, Editor
January 11, 2012