Abstract
This study proposes the development and implementation of a novel Universal Serial Bus (USB)-Programmable Logic Controller (PLC), called a USB-PLC controller, for a mechatronics cloud laboratory. The aim of a mechatronics cloud laboratory is to provide state of the art research quality equipment to students, allowing them to conduct hands-on experiments via the Internet. One objective of the cloud laboratory is to not only provide equipment for conducting set experiments, but also to provide a means for students to access research equipment in order to conduct individual research experiments. The proposed controller for these cloud laboratory experiments has been chosen in order to expose the students to as many different engineering and technology disciplines as possible.
1. Introduction
In traditional laboratories, students of a technical course could only engage in hands-on exercises in classrooms with workstations housing technical courseware. In most engineering institutions, the experiments are swapped to other technical environments/courses; as a result, students do not have access to any extracurricular practice. In recent years, there has been a noticeable increase in the number of higher education institutions investigating and implementing cloud-based solutions [1]. An education cloud is a scalable cloud computing platform that stores the technical environment in the cloud, and allows students to continue to conduct technical hands-on exercises outside the classroom, and at their own pace.
In cloud laboratories, experiments are virtualized, and provide resources on demand to cloud users through the Internet, while the cloud server allows clients to access program processes. In addition, the cloud laboratory uses cameras to monitor real mechatronics equipment. It is a real-time system provided by a web browser. This study develops a novel USB-PLC controller for graphically monitoring and controlling mechatronics equipments in a cloud laboratory. All of the instrumentations used in the experiment are remotely accessed over the web, and the client can immediately experiment with the mechatronics platform. In this application, a real client interacts with real units, under real-time operation conditions. The graphical user interface increasingly used in remote laboratories aims to make the use of computer simulation interesting and instructive for users during experiments employing the mechatronics platform [2–4]. The experimental setup can also be monitored via IP (Internet Protocol) camera. Web-based technology through a remote laboratory can extend traditional laboratory techniques by remotely sharing web-based mechatronics devices, making it possible for clients to conduct online experiments using real equipment from the client's location. This study shows that the integrated network developed here and cloud technology for the mechatronics platform system is innovative, novel, user-friendly, and can be successfully implemented for mechatronics education purposes [5–7].
Computer technology has flourished, and the most popular interface, USB, is a widely used standard bus type for all kinds of devices, including: keyboard, mouse, scanner, camera, printer, and hard drive. It was designed from the ground up as an interface for communicating with many different peripheral devices, without the limits and frustrations associated with older interfaces. Personal computers have USB ports for connecting standard peripherals, as well as custom hardware for many purposes. Thus, students can enjoy high quality measurement capability without programming. One need only connect a USB compact data-acquisition module to a computer; no additional batteries or power supplies are required to install software, or to connect a signal directly to a module [8–9]. Thanks to USB's portability, convenience and general-purpose interface, a client would simply need a personal computer with a connection to a cloud lab server via Internet and the program driver, in order to begin testing.
The proposed novel USB-PLC controller implements the experimental mechatronics platform, based on laboratory cloud technology. It supports actual experiments on web applications, and shows great promise in enhancing users' motivation. Performing mechatronics exercises over a web browser environment is exciting, and allows users to directly monitor the response of the experimental setup. Some studies assert that time spent participating in “active learning”, such as during experiments, is as important for students as “passive learning”, such as when attending lectures. The same outcomes are derived from experimental- or practice-oriented systems [10–12].
The proposed USB-PLC controller has the following features. First, its construction is PC-based; the operation of complex data processing is superior in performance to that of the traditional PLC. Second, the USB has the key feature of ‘plug and play’, and the program is not installed on the USB-PLC controller. The controller can therefore be changed at any time, which is convenient for maintenance and modifications. Finally, the USB-PLC controller is constructed as PC-based, so programming, modifying and operating can be performed through the integrated development environment (IDE), in order to link up with the PC program. In addition, the application of mechatronics equipment by cloud technology via the web allows the user to upload the program into a database, and a connected USB-PLC controller will work immediately; the program and experimental test results can then be checked.
2. System architecture
This study proposes the development and implementation of a novel USB-PLC controller and cloud web server for remote laboratory use. It is open source and allows resource sharing, so that all clients can use it; users can establish and publish their own programs via cloud mechatronics equipment by USB-PLC controller. This differs from traditional PLCs.
Traditional PLC programming has to be done by transmission line for downloading; therefore, it must be shut down, downloaded and run step by step. Thus, during maintenance and debugging, one needs to repeat the above steps many times, which can be quite complicated and time consuming. The hardware structure of traditional PLC architecture is shown in Figure 1. The computer is connected to the PLC through RS-232 to RS-422 cabling, and the program is installed in the PLC.

The structure of a traditional PLC
The main aim of this research was to develop an advanced learning laboratory for mechatronics and a USB-PLC controller that will allow students or other clients to carry out real experiments via the Internet. The mechatronics platform also provides additional features, such as a graphical interface, to facilitate understanding as the actual operation of equipment is accessible via Internet, and remote monitoring of experiments available via IP camera. These functions are explained in detail in the following section. The system architecture consists of hardware and software.
2.1. Hardware
The architecture of the USB-PLC controller and cloud mechatronics system is shown in Figure 2. The server includes a PHP web server, a software server and a program database server for sharing and Internet connection. This cloud server has the capabilities of monitoring and control, data processing, complex computing, etc. The client's PC is connected via the USB interface to the USB-PLC controller, and linked to the Mechatronics via Ethernet, with an IP camera returning a display image. Since the USB-PLC's program is inside the PC, it can be modified at any time.

Architecture of the USB-PLC controller for a mechatronics cloud
The hardware specifications of the USB-PLC controller are as follows [13]: (1) Support analog input connections: There are 8 differential input channels, with 16 single-ended or combination analog inputs available on the USB-PLC controller; (2) the USB-PLC controller provides two analog output (AO) channels; and (3) supports isolated digital input connections: the USB-PLC controller has 8 isolated digital input/output channels. Each of the isolated digital input/output channels accepts an input voltage of 5-30 Vdc.
2.2. Software
Web-based runtime models and USB-PLC controller drivers were developed in a visual basic integrated development environment, and can drive operations through ActiveX components. The Apache 2.5.10 server application was used to communicate with all clients. This application is free software with open-source code, and is powerful and stable, both in terms of communication and operating system. The MySQL server was used to manage client information, and to save databases obtained from the experiments by the platform. PHP 5.0 techniques and HTML commands were used to prepare the mechatronics, and for the implementation of the USB-PLC controller.
A diagram of the software structure of the system developed for a cloud laboratory server is given in Figure 3. It shows that the cloud laboratory server is very important to the program database, includes the system database and the user database, and supports open-source code for client use. A flowchart of common cloud laboratory server, mechatronics and USB-PLC controller was prepared to perform tasks, as shown in Figure 4.

Software structure of the cloud labs server

The flowchart for performance
3. Conducting experiments in the cloud laboratory
Before developing a cloud laboratory, hardware/software data points must be planned, using the security system to build the control privileges of multiple users for the efficient management of the cloud labs server. The students are connected to different experiments using different IP addresses. After connecting to the cloud laboratory, they navigate to the web page of the laboratory platform. The students can then run the actual mechatronics systems.
The case study for the material filling and conveyor belt machine is shown in Figure 5. Figure 6 shows the system architecture of the USB-PLC controller and peripheral components.

USB-PLC controller and mechatronics system configuration

System architecture of USB-PLC controller and peripheral component
The cloud laboratory server includes real-time experimental sets; these are remotely accessible via Internet. Real-time control and monitoring of mechatronics experiments using the fill and conveyor belt machine is given as a case study to illustrate the remote experiments. Clients can remotely access the set over the web in order to perform actual experiments, such as digital input (DI), data acquisition, decoder switches, digital output (DO), and controlling the conveyor motor and pneumatic cylinder.
The client login cloud laboratory server system can download and upload users' programs through the web page; as the client does not display the HTML components, the user would download the ActiveX component.
When a client has logged into the system, the web page is shown, as in Figure 7. Figure 7 is a program menu, and all the programs are built into the web server through the Internet by linking to the USB-PLC controller.

Programs menu
The USB-PLC input signal shows DI4's status, based on the color sensor returning to the web page, as shown in Figure 8. The system determined it to be the red metal material, as shown in DI5. The client can now enter the number of settings and begin to control the system. The conveyor belt will then take the material to the specified location. If the material is red metal material, the first rotating cylinder will block it, so that the red metal material will move to the first exit, and the filling, transportation, identification and other automated processing procedures will be performed.

Measurement of metal material
If the material is black metal material, it cannot return a color sensor status. If no color sensor status is returned, the material is determined to be a black metal material. The conveyor belt will transport the material to the specified location; in this case the rotating cylinder will block it and send it to the second exit, and the filling, transportation, identification and other automated processing procedures will be performed.
4. Evaluation
This study employed five experts in the field to evaluate the cloud laboratory, and to determine the accuracy of the embedded knowledge, as well as the effectiveness of the proposed system. The experts were university professors and/or engineers with an average of more than three years of experience in mechatronics.
This study was performed at National Changhua University of Education in Taiwan. Twenty undergraduate students participated in the laboratory; it comprised both lectures and experiments managed by one teacher and two graduate assistants. Students were given preparation time prior to laboratory use, and were required to write a report upon completion of the exercises. At the end of the laboratory time, students were assessed on the basis of their project work.
To increase the accuracy of our results, more than one data collection method was employed. We used a questionnaire, interviews and observation in the assessment of the cloud laboratory. Students were requested to answer an anonymous questionnaire, based on a Likert scale ranging from 1 = “strongly disagree”, to 5 = “strongly agree”.
Questionnaire material and results are presented in Table 1. Based on the results of the evaluation, both groups (experts and students) rated the proposed system highly. A further analysis was conducted to investigate whether or not experts and students differed in their mean ratings of the effectiveness and usability of the system. Since the sample size is small, nonparametric Mann-Whitney U-tests were used. The significance level was predicated on
Mann-Whitney U-test results of Survey
5. Conclusion
Most studies in this field have reported on the development of modules for the instruction of mechatronics [14–16]; however, few papers have attempted to integrate mechatronics with cloud laboratories for academic research.
In this study, a novel USB-PLC controller and cloud laboratory server system for mechatronics equipment was successfully presented to improve learning by students and researchers in actual applications via the Internet. The proposed system also provides laboratory access and experience through mechatronics equipment in a cloud laboratory to students who would not normally have easy access to such infrastructure.
Mechatronics is an integrated system consisting of hardware and software. The system design was based on popular technologies; it enables users to learn from online courses, including the concepts of sequential logic, program exercises, real time operation and real-time exercises. Therefore, the system provides a learning and experimental platform to users, allowing them to access the system, to monitor and control the equipment and to see the results online.
It is hoped that this proposed USB-PLC controller will prove helpful in mechatronics learning as a useful and reasonable alternative or addition to traditional approaches.
