Tag Archives: plc logger

Click PLC Logging Data with Time and Date Stamp




We will now look at logging data with time and date in the Click PLC. The Click PLC can perform indirect addressing. This means that I can ask for information to be moved to and from locations in the PLC using a pointer that will indicate the address.
Indirect Addressing
Stephen Covey in The 7 Habits of Highly Effective People said: “Begin With the End in Mind.” This is especially true when looking at storing or logging data within the programmable logic controller. (PLC) It is important to fully define what you want to accomplish with your program.
Click PLC Logging Data with Time and Date Stamp
In our Click PLC example, we want to take a series of consecutive memory locations (DS1 to DS10) and store them in memory areas DS100 to DS4100 each minute. We will be able to store 400 entries (400 minutes) in our storage area. Every entry will include the real-time clock (RTC) of the Click. This will show the date and time of each entry. Let’s get started! Keep on Reading!

Now You Can Have Data Logging Free

A data logger is also known as a data recorder or data acquisition. It is a method to record data over a period of time and/or events.

The recorded information can come from sensors in the field. They can be digital or analog. With the analog (voltage or current) we can measure temperature, pressure, sound, weight, length, etc. Digital data can be used for counts, times, events (motor overload), etc.


Data collecting can be time or event-driven. Time-based would be like collecting data every minute, shift, day, etc. An event-based collection would be from an error in the field such as an overload of a motor or a fault with a temperature controller.

stock-vector-analysis-magnifying-glass-over-seamless-background-with-different-association-terms-vector-69601843

Data mining / analysis is the most important part of the data logging.

Data mining/analysis is the way in which we look at the data and determine what to do. Clustering is a method to look at the data in similar groups for comparison. An example of this would be the amount of material made on individual shifts in the plant.  Setting up the data logging in a way to examine the output over time is very helpful in determining methods to increase productivity in the manufacturing environment.

Time studies or observations are vital in the lean manufacturing world. Data logging can be useful in assisting with these studies. However, unlike the usual manual approach, this time study can be continuous.

Doing Time Observations

ebook_RobustDataLoggingforFreeData logging does not have to be expensive. It is also not as intimidating as it may sound.

The ‘Robust Data Logging for Free’ eBook is available in a free download. Just subscribe to ACC Automation to get the link for the free download.
 
This eBook will walk you through step by step on getting information into a database so you can start analyzing the data. With traditional loggers, the software will read the memory of the PLC and store in a local computer. If the network stops or the PLC communication fails then the logging will stop.
Creating a robust PLC data logger allows the communication to be stopped for a period of time without losing any of the data for collection. This is accomplished by storing the data locally on the PLC until communication is restored. All of the data is then read without loss. The amount of time that the connection can be lost will be dependent on the memory size of the PLC and the frequency of the data collected.
This series will walk you through the steps to create and implement a robust PLC data logger using the following equipment and hardware.
  • Automation Direct – Do-More – H2-DM1E PLC (Ethernet Modbus TCP)
  • Do-more Designer 1.3 (Simulator instead of PLC mentioned above)
  • Windows-based computer running IIS
  • Visual Basic 6

Additional information on Omron Host Link Protocol and Indirect Addressing can be found in the eBook.

The ‘Robust Data Logging for Free’ eBook is available for a free download. Just subscribe to ACC Automation on the left side menu of the website to get the link for the free download.

Watch on YouTube: Now You Can Have Robust Data Logging For Free
If you have any questions or need further information please contact me.
Thank you,
Garry



If you’re like most of my readers, you’re committed to learning about technology. Numbering systems used in PLC’s are not difficult to learn and understand. We will walk through the numbering systems used in PLCs. This includes Bits, Decimal, Hexadecimal, ASCII and Floating Point.

To get this free article, subscribe to my free email newsletter.


Use the information to inform other people how numbering systems work. Sign up now.

The ‘Robust Data Logging for Free’ eBook is also available as a free download. The link is included when you subscribe to ACC Automation.


Now You Can Have Robust Data Logging for Free – Part 12

Now You Can Have Robust Data Logging for Free – Part 12

HTML and Scripting Languages

 We have the following accomplished:
  • PLC program
  • Visual Basic Program
  • Data collected in a Database
  • IIS web service established
  • ASP Script Written
iis106
Let’s take a closer look at the ASP Script ( AccRL.asp) that was written in part 11:



The <html> is at the start of the file and the </head> is at the end of the file. These tags all have to have a start and end.  The ‘/’ indicates the end of the tag.
The <head> is used to place the information for the web page. The refresh will load the page after 300 seconds (5 minutes). This way the information will always be the latest. The title is used to label the page. This is the information at the top of the browser. The SHORTCUT ICON is used for the icon at the top of the browser near the page address.
<html>

<head>
<meta HTTP-EQUIV=”Refresh” CONTENT=”300″>
<title>ACC Automation – Robust Logger</title>
<LINK REL=”SHORTCUT ICON” HREF=”http://192.168.1.3/ACC_Do.ico”/></head>

ActiveX Data Objects (ADO) is used to access databases from your web pages. ADOVBS.inc is a file that has all of the ADO constants defined.  Be sure to add this file in your root web application directory.
<!– #include virtual=”/adovbs.inc” –>

The <% and %> symbols indicate the start and finish of VBScript in the page. We dimension our variables for StartTime and EndTime. These will be used to determine how long our script took to execute.
<%
Dim StartTime, EndTime
StartTime = Timer

We dimension the variables that are used for the connection to the database file.
Dim OBJdbConnection
Dim rs1
Dim objCmd

We set up the connection to the database and determine what information we need to retrieve.
Set OBJdbConnection = Server.CreateObject(“ADODB.Connection”)

OBJdbConnection.Open “Provider=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=C:\AccRL\data\AccRL.accdb;Persist Security Info=False;”
set rs1 = Server.CreateObject(“ADODB.recordset”)
with rs1
 .CursorType = adOpenForwardOnly
 .LockType = adLockReadOnly
 .CursorLocation = adUseServer
 .ActiveConnection = OBJdbConnection
 .Source = “SELECT * FROM Minute_Log;”
end with

Using getrows will allow us to execute the Select command and retrieve all of the information in one pass from the database.  This is the quickest method to get the information out quickly.
rs1.Open

arraytime = rs1.getrows()
rs1.close

We now write the information from the database to the page.
Response.Write arraytime(0,0) & “<br>”
Response.Write arraytime(1,0) & “<br>”
Response.Write Year(arraytime(1,0))& “/” & Right(“0” & Month(arraytime(1,0)), 2) & “/” & Right(“0” & Day(arraytime(1,0)), 2) & “<br>”
Response.Write arraytime(2,0)& “<br>”
Response.Write arraytime(3,0)& “<br>”
Response.Write arraytime(4,0)& “<br>”

The EndTime is now set and the total time it took for the process is displayed.
EndTime = Timer

Response.write “<p>Processing took “&(EndTime-StartTime)&” seconds<p>&nbsp;”
%>
</body>
</html>

Now that you have information into the database and IIS running, you can display the data in various ways.
Charts:
iis109 display
Graphs:
iis108 display Gauges:
iis107 display
This ends our robust logger design. For the complete PLC program, VB source code and web page file please send me an email and ask for the ACC Robust Logger Program. I will be happy to email you the information.
If you have any questions or need further information, please contact me.
Regards,
Garry

Now You Can Have Robust Data Logging for Free – Part 1
Now You Can Have Robust Data Logging for Free – Part 2
Now You Can Have Robust Data Logging for Free – Part 3
Now You Can Have Robust Data Logging for Free – Part 4
Now You Can Have Robust Data Logging for Free – Part 5
Now You Can Have Robust Data Logging for Free – Part 6
Now You Can Have Robust Data Logging for Free – Part 7
Now You Can Have Robust Data Logging for Free – Part 8
Now You Can Have Robust Data Logging for Free – Part 9
Now You Can Have Robust Data Logging for Free – Part 10
Now You Can Have Robust Data Logging for Free – Part 11
Now You Can Have Robust Data Logging for Free – Part 12




If you’re like most of my readers, you’re committed to learning about technology. Numbering systems used in PLC’s are not difficult to learn and understand. We will walk through the numbering systems used in PLCs. This includes Bits, Decimal, Hexadecimal, ASCII and Floating Point.

To get this free article, subscribe to my free email newsletter.


Use the information to inform other people how numbering systems work. Sign up now.

The ‘Robust Data Logging for Free’ eBook is also available as a free download. The link is included when you subscribe to ACC Automation.


Now You Can Have Robust Data Logging for Free – Part 11

Now You Can Have Robust Data Logging for Free – Part 11

HTML and Scripting Languages

 We have the following accomplished:
  • PLC program
  • Visual Basic Program
  • Data collected in a Database
  • IIS web service established



The machine that has the IIS web service must have the Microsoft Access Database Engine 2010 installed. This can be obtained by the following link:
You can select the 32 bit or 64-bit version that matches your computer.

Microsoft Access Database Engine 2010 Redistributable
Note:  If you have office installed on your machine already then you probably will already have this file.

ActiveX Data Objects (ADO) is used to access databases from your web pages. ADOVBS.inc is a file that has all of the ADO constants defined.  Be sure to add this file in your root web application directory. How to add this code to a web page is shown in the sample code below.
You can download ADOVBS.inc from this site in text format. (Just rename to ADOVBS.inc from ADOVBS.txt)
ADO Introduction:
http://www.w3schools.com/asp/ado_intro.asp

Lets set up ASP on IIS to display any error messages to our browser.
Call up Control Panel and then go to Administrative Tools. Call up Internet Information Services (IIS) Manager.iis100

From IIS Manager, double click on ASP under IIS. Expand Debugging Properties and change the Send Errors To Browser to True.

iis102

iis103

Let’s also ensure that your browser is set to display the error messages in internet explorer (IE). Call up Internet options from the main settings.

iis104

iis105

Click the setting for ‘Show friendly HTTP error messages’. This will ensure that the error messages show up in your browser.

The last part of our project is to display the database information to the network. We do this by using a webpage. The HTML and VBScript can be writing in any editor. (Like Notepad)

There are also a great number of online editors that you can visually see what your page will look like while developing your code.
To learn more about VBScript following the link below:
Lets take a look at the AccRL.asp file:


<html>
<head>
<meta HTTP-EQUIV=”Refresh” CONTENT=”300″>
<title>ACC Automation – Robust Logger</title>
<LINK REL=”SHORTCUT ICON” HREF=”http://192.168.1.3/ACC_Do.ico”/></head>
<!– #include virtual=”/adovbs.inc” –>
<%
Dim StartTime, EndTime
StartTime = Timer

Dim OBJdbConnection
Dim rs1
Dim objCmd

Set OBJdbConnection = Server.CreateObject(“ADODB.Connection”)
OBJdbConnection.Open “Provider=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=C:\AccRL\data\AccRL.accdb;Persist Security Info=False;”
set rs1 = Server.CreateObject(“ADODB.recordset”)
with rs1
 .CursorType = adOpenForwardOnly
 .LockType = adLockReadOnly
 .CursorLocation = adUseServer
 .ActiveConnection = OBJdbConnection
 .Source = “SELECT * FROM Minute_Log;”
end with

rs1.Open
arraytime = rs1.getrows()
rs1.close

Response.Write arraytime(0,0) & “<br>”
Response.Write arraytime(1,0) & “<br>”
Response.Write Year(arraytime(1,0))& “/” & Right(“0” & Month(arraytime(1,0)), 2) & “/” & Right(“0” & Day(arraytime(1,0)), 2) & “<br>”
Response.Write arraytime(2,0)& “<br>”
Response.Write arraytime(3,0)& “<br>”
Response.Write arraytime(4,0)& “<br>”

EndTime = Timer
Response.write “<p>Processing took “&(EndTime-StartTime)&” seconds<p>&nbsp;”
%>
</body>
</html>

Place this AccRL.asp file into the root directory of our web server. Call up the page though our browser (http:\\localhost\AccRL.asp) and the following output will be seen.
iis106
In part 12 we will break down the ASP code and modify. For the complete PLC program, VB source code and web page file please send me an email and ask for the ACC Robust Logger Program. I will be happy to email you the information.
If you have any questions or need further information, please contact me.
Regards,
Garry

Now You Can Have Robust Data Logging for Free – Part 1
Now You Can Have Robust Data Logging for Free – Part 2
Now You Can Have Robust Data Logging for Free – Part 3
Now You Can Have Robust Data Logging for Free – Part 4
Now You Can Have Robust Data Logging for Free – Part 5
Now You Can Have Robust Data Logging for Free – Part 6
Now You Can Have Robust Data Logging for Free – Part 7
Now You Can Have Robust Data Logging for Free – Part 8
Now You Can Have Robust Data Logging for Free – Part 9
Now You Can Have Robust Data Logging for Free – Part 10
Now You Can Have Robust Data Logging for Free – Part 11




If you’re like most of my readers, you’re committed to learning about technology. Numbering systems used in PLC’s are not difficult to learn and understand. We will walk through the numbering systems used in PLCs. This includes Bits, Decimal, Hexadecimal, ASCII and Floating Point.

To get this free article, subscribe to my free email newsletter.


Use the information to inform other people how numbering systems work. Sign up now.

The ‘Robust Data Logging for Free’ eBook is also available as a free download. The link is included when you subscribe to ACC Automation.


Now You Can Have Robust Data Logging for Free – Part 10

Now You Can Have Robust Data Logging for Free – Part 10

Computer Web Server (IIS)

 We have come a long way. The PLC program has been written. The visual basic program has been written. Information is now being collected from the Do-more PLC via Modbus TCP and stored in a database using visual basic.
The next step is to deliver the information on the network. We will do this by installing Internet Information Services. (IIS) This is a group of internet servers that include a Web or Hypertext Transfer Protocol server (HTTP) and a File Transfer Protocol server (FTP). IIS will allow us to connect the physical hardware to the data. This could be desktop computers, laptops, tablets, cell phones, watches, etc. The advantage of using HTTP is that we can share the information with all of these devices without having to be concerned over the operating system of each of them. As long as they can display a web page we are good to go.



Active Service Pages (ASP) will be installed at the same time. This is a program that will run scripts at the server before delivering the HTML code to the browser. It is similar to CGI and Perl but is simpler and faster.
ASP.Net Tutorial
We will install this on a Windows 8.1 machine.
Call up the Control Panel.
  • Swiping in from the right and searching for “control panel”.
  • Win + x will call a menu to select the control panel.
IIS_000
Select Programs and Features
IIS_001
Select Turn Windows features on or off
IIS_002
Select ASP after expanding Internet Information Services / World Wide Web Services / Application Development Features. This will select all of the other options.
IIS_003
Hit OK to install the services.
IIS_004
IIS_005
We now have IIS installed.
IIS_006
Under the following default directory, you will find the location to put your web pages.
C:\inetpub\wwwroot\
IIS_007
If you call up the iisstart.htm file in this directory it will call up a page from Microsoft to explain the IIS web service.
IIS_009
Installing IIS on windows 7 and XP is very similar to the above procedure. Windows 98 you had to install a personal web service (PWS) and then ASP separately.
Further information on ASP can be obtained from the following website:
This site will walk you through ASP.
In part 11 we will look at HTML and scripting languages like JavaScript or VBScript.
If you have any questions or need further information, please contact me.
Regards,
Garry

Now You Can Have Robust Data Logging for Free – Part 1
Now You Can Have Robust Data Logging for Free – Part 2
Now You Can Have Robust Data Logging for Free – Part 3
Now You Can Have Robust Data Logging for Free – Part 4
Now You Can Have Robust Data Logging for Free – Part 5
Now You Can Have Robust Data Logging for Free – Part 6
Now You Can Have Robust Data Logging for Free – Part 7
Now You Can Have Robust Data Logging for Free – Part 8
Now You Can Have Robust Data Logging for Free – Part 9
Now You Can Have Robust Data Logging for Free – Part 10




If you’re like most of my readers, you’re committed to learning about technology. Numbering systems used in PLC’s are not difficult to learn and understand. We will walk through the numbering systems used in PLCs. This includes Bits, Decimal, Hexadecimal, ASCII and Floating Point.

To get this free article, subscribe to my free email newsletter.


Use the information to inform other people how numbering systems work. Sign up now.

The ‘Robust Data Logging for Free’ eBook is also available as a free download. The link is included when you subscribe to ACC Automation.