Context-Aware System for Information Flow Management in Factories of the Future
Abstract
:1. Introduction
2. Theoretical Framework
2.1. Industry 4.0
- Interconnection—involves linking machines, devices, sensors and people;
- Information transparency—interconnects the physical and virtual worlds, providing contextual data in real time for appropriate decision-making;
- Decentralization of decisions—combines local and global information to increase productivity at different levels, this is possible thanks to systems that monitor and control the physical world autonomously;
- Technical assistance—uses mobile devices and robotic technology to assist in decision-making and problem-solving.
2.2. Context-Aware Applications
2.3. Internet of Things
2.4. Microservices
- Flexibility: The system has the ability to easily adapt to changes in the environment and support all necessary modifications;
- Modularity: The system is made up of isolated components, each of which is responsible for a specific task, rather than relying on a single component that offers all the functionality;
- Evolution: It is possible to maintain the system while it evolves, adding new functionalities independently.
3. Context-Aware Application
3.1. Scenario
- Identify data changes in data classes in a database from API requests made to the integration layer;
- Identify situations considered urgent or important when analyzing data;
- Send alerts/notifications to other applications/services;
- Maintaining its own data repository to store information received by other applications, recording data that may be needed to verify the proper functioning of the application or for other types of information;
- Process data to acquire contextual information for other services in the global system in which it is inserted and provide an access point to this information.
3.2. CA-FoFS Architecture
3.3. Context Engine Architecture
3.4. Implementation and Integration Technologies
- The application can receive information through the integration layer. To do this, the components that need this data (Context Server and Context Acquisition) must use the DataServices interface. This data is obtained via HTTP GET requests and the information is received in JSON format. In addition, the application can receive data from other applications in the CA-FoFS system, an operation that takes place in the Context Builder. This receives HTTP POST requests with data in JSON format, managing this data according to the service task and returning an HTTP status code indicating the result of the request received.
- The application can also send information to other external applications. For this to happen, the application must receive a request for information, which is the responsibility of the Context Server component. This receives HTTP GET requests from the service layer, providing an HTTP response with the content of the response in JSON format and the HTTP status code, according to the functionality of the service and the input parameters received. In addition, the application can send alerts to the NAS, which are sent via HTTP POST requests with the information in JSON in the content of the message.
3.5. Development of the Applications
4. Experimental Findings
4.1. Tests
- Preparation: Configure the necessary dependencies (controllers, interfaces, classes, etc.) using fake objects, simulate the required information (stops, productions, etc.), and configure the behavior of some functions to return the desired result for the test (for example, OK or BadRequest).
- Action: Create instances of the class of methods to be tested, passing the necessary dependencies, instantiating the static information to be used, invoking the respective methods, and capturing the outputs.
- Verification: Verify the correct execution, ensuring that the methods that modify the data in the database were called the expected number of times and confirming whether the returned information or console output is as expected.
4.2. Case Studies
4.2.1. Case Study 1: Sending Urgent Stop Alerts and Making Them Available through the Virtual Assistant
4.2.2. Case Study 2: Material Replacement Orders from Production Lines
4.2.3. Case Study 3: Provision of Contextual Information for Creating Reports by the Virtual Assistant
5. Conclusions and Future Work
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Sivakumar, K.; Dhyankumar, C.T.; Cherian, T.M.; Manikandan, N.; Thejasree, P. Requirements for the Adoption of Industry 4.0 in the Sustainable Manufacturing Supply Chain. In Industry 4.0 Technologies: Sustainable Manufacturing Supply Chains: Volume II-Methods for Transition and Trends; Springer: Berlin/Heidelberg, Germany, 2023; pp. 185–201. [Google Scholar]
- Ferreira, J.J.; Lopes, J.M.; Gomes, S.; Rammal, H.G. Industry 4.0 implementation: Environmental and social sustainability in manufacturing multinational enterprises. J. Clean. Prod. 2023, 404, 136841. [Google Scholar] [CrossRef]
- Bisio, I.; Garibotto, C.; Grattarola, A.; Lavagetto, F.; Sciarrone, A. Exploiting context-aware capabilities over the internet of things for industry 4.0 applications. IEEE Netw. 2018, 32, 101–107. [Google Scholar] [CrossRef]
- Xu, M.; David, J.M.; Kim, S.H. The fourth industrial revolution: Opportunities and challenges. Int. J. Financ. Res. 2018, 9, 90–95. [Google Scholar] [CrossRef]
- Hermann, M.; Pentek, T.; Otto, B. Design Principles for Industrie 4.0 Scenarios. In Proceedings of the 2016 49th Hawaii International Conference on System Sciences (HICSS), Koloa, HI, USA, 5–8 January 2016. [Google Scholar]
- Petrasch, R.; Hentschke, R. Process modeling for industry 4.0 applications: Towards an industry 4.0 process modeling language and method. In Proceedings of the 2016 13th International Joint Conference on Computer Science and Software Engineering (JCSSE), Khon Kaen, Thailand, 13–15 July 2016; pp. 1–5. [Google Scholar]
- Yavuz, O.; Uner, M.M.; Okumus, F.; Karatepe, O.M. Industry 4.0 technologies, sustainable operations practices and their impacts on sustainable performance. J. Clean. Prod. 2023, 387, 135951. [Google Scholar] [CrossRef]
- Olsen, T.L.; Tomlin, B. Industry 4.0: Opportunities and Challenges for Operations Management. Manuf. Serv. Oper. Manag. 2020, 22, 113–122. [Google Scholar] [CrossRef]
- Wieland, M.; Leymann, F.; Schäfer, M.; Lucke, D.; Constantinescu, C.; Westkämper, E. Using context-aware workflows for failure management in a smart factory. In Proceedings of the Fourth International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies UBICOMM, Florence, Italy, 25–30 October 2010; pp. 379–384. [Google Scholar]
- Flatt, H.; Koch, N.; Röcker, C.; Günter, A.; Jasperneite, J. A context-aware assistance system for maintenance applications in smart factories based on augmented reality and indoor localization. In Proceedings of the 2015 IEEE 20th Conference on Emerging Technologies & Factory Automation (ETFA), Luxembourg, 8–11 September 2015; pp. 1–4. [Google Scholar]
- Zhong, R.Y.; Xu, X.; Klotz, E.; Newman, S.T. Intelligent manufacturing in the context of industry 4.0: A review. Engineering 2017, 3, 616–630. [Google Scholar] [CrossRef]
- Shi, Z.; Xie, Y.; Xue, W.; Chen, Y.; Fu, L.; Xu, X. Smart factory in Industry 4.0. Syst. Res. Behav. Sci. 2020, 37, 607–617. [Google Scholar] [CrossRef]
- Gubán, M.; Kovács, G. INDUSTRY 4.0 CONCEPTION. Acta Tech.-Corviniensis-Bull. Eng. 2017, 10, 22. [Google Scholar]
- Reza, M.N.H.; Malarvizhi, C.A.N.; Jayashree, S.; Mohiuddin, M. Industry 4.0—Technological revolution and sustainable firm performance. In Proceedings of the 2021 Emerging Trends in Industry 4.0 (ETI 4.0), Raigarh, India, 19–21 May 2021; pp. 1–6. [Google Scholar]
- Alexopoulos, K.; Makris, S.; Xanthakis, V.; Sipsas, K.; Chryssolouris, G. A concept for context-aware computing in manufacturing: The white goods case. Int. J. Comput. Integr. Manuf. 2016, 29, 839–849. [Google Scholar] [CrossRef]
- Bang, A.O.; Rao, U.P. Context-aware computing for IoT: History, applications and research challenges. In Proceedings of the Second International Conference on Smart Energy and Communication: ICSEC 2020, Jaipur, India, 20–21 March 2020; Springer: Singapore, 2021; pp. 719–726. [Google Scholar]
- Wollschlaeger, M.; Sauter, T.; Jasperneite, J. The future of industrial communication: Automation networks in the era of the internet of things and industry 4.0. IEEE Ind. Electron. Mag. 2017, 11, 17–27. [Google Scholar] [CrossRef]
- Lasi, H.; Fettke, P.; Kemper, H.G.; Feld, T.; Hoffmann, M. Industry 4.0. Bus. Inf. Syst. Eng. 2014, 6, 239–242. [Google Scholar] [CrossRef]
- Mohamed, M. Challenges and benefits of industry 4.0: An overview. Int. J. Supply Oper. Manag. 2018, 5, 256–265. [Google Scholar]
- Dey, A.K. Understanding and using context. Pers. Ubiquitous Comput. 2001, 5, 4–7. [Google Scholar] [CrossRef]
- Abowd, G.D.; Dey, A.K.; Brown, P.J.; Davies, N.; Smith, M.; Steggles, P. Towards a better understanding of context and context-awareness. In Proceedings of the Handheld and Ubiquitous Computing: First International Symposium, HUC’99, Karlsruhe, Germany, 27–29 September 1999; Proceedings 1. Springer: Berlin/Heidelberg, Germany, 1999; pp. 304–307. [Google Scholar]
- Ye, Y.; Hu, T.; Nassehi, A.; Ji, S.; Ni, H. Context-aware manufacturing system design using machine learning. J. Manuf. Syst. 2022, 65, 59–69. [Google Scholar] [CrossRef]
- Schilit, B.; Adams, N.; Want, R. Context-Aware Computing Applications. In Proceedings of the 1994 First Workshop on Mobile Computing Systems and Applications, Washington, DC, USA, 8–9 December 1994; pp. 85–90. [Google Scholar] [CrossRef]
- Rose, K.; Eldridge, S.; Chapin, L. The internet of things: An overview. Internet Soc. (ISOC) 2015, 80, 1–50. [Google Scholar]
- Breivold, H.P.; Sandström, K. Internet of Things for Industrial Automation—Challenges and Technical Solutions. In Proceedings of the 2015 IEEE International Conference on Data Science and Data Intensive Systems, Sydney, Australia, 11–13 December 2015; pp. 532–539. [Google Scholar]
- Lampropoulos, G.; Siakas, K.; Anastasiadis, T. Internet of things in the context of industry 4.0: An overview. Int. J. Entrep. Knowl. 2019, 7, 4–19. [Google Scholar] [CrossRef]
- Perera, C.; Zaslavsky, A.; Christen, P.; Georgakopoulos, D. Context Aware Computing for The Internet of Things: A Survey. IEEE Commun. Surv. Tutor. 2014, 16, 414–454. [Google Scholar] [CrossRef]
- Larrucea, X.; Santamaria, I.; Colomo-Palacios, R.; Ebert, C. Microservices. IEEE Softw. 2018, 35, 96–100. [Google Scholar] [CrossRef]
- Dragoni, N.; Giallorenzo, S.; Lafuente, A.L.; Mazzara, M.; Montesi, F.; Mustafin, R.; Safina, L. Microservices: Yesterday, today, and tomorrow. In Present and Ulterior Software Engineering; Springer: Cham, Switzerland, 2017; pp. 195–216. [Google Scholar]
- Shadija, D.; Rezai, M.; Hill, R. Towards an understanding of microservices. In Proceedings of the 2017 23rd International Conference on Automation and Computing (ICAC), Huddersfield, UK, 7–8 September 2017; pp. 1–6. [Google Scholar] [CrossRef]
- Jamshidi, P.; Pahl, C.; Mendonça, N.C.; Lewis, J.; Tilkov, S. Microservices: The journey so far and challenges ahead. IEEE Softw. 2018, 35, 24–35. [Google Scholar] [CrossRef]
- Viggiato, M.; Terra, R.; Rocha, H.; Valente, M.T.; Figueiredo, E. Microservices in practice: A survey study. arXiv 2018, arXiv:1808.04836. [Google Scholar]
- Continental FoF (2023) Continental FoF—Continental AA’s Factory of Future (utad.pt). Available online: https://fof.utad.pt/ (accessed on 23 April 2024).
- Monteiro, P.; Lima, C.; Pinto, T.; Nogueira, P.; Reis, A.; Filipe, V. Context-Aware Applications in Industry 4.0: A Systematic Literature Review. In International Symposium on Distributed Computing and Artificial Intelligence; Springer: Cham, Switzerland, 2023; pp. 301–311. [Google Scholar]
- Controle de Alterações de Dados (SQL Server). Available online: https://learn.microsoft.com/pt-br/sql/relational-databases/track-changes/track-data-changes-sql-server?view=sql-server-ver16 (accessed on 13 November 2023).
- Pereira, R. Uso de Assistentes Virtuais no Apoio à Gestão de Produção. Master’s Thesis, Universidade de Trás-os-Montes e Alto Douro, Vila Real, Portugal, 2023. [Google Scholar]
# | Service Name | Description |
---|---|---|
1 | Checking for Data Changes | Responsible for verifying changes in data related to stoppages and productions in the company database, through requests to the integration layer via API. |
2 | Update items | Responsible for adding or updating items verified as changes to data in the company’s database in the application’s own database. |
3 | Check importance | Checks whether the data detected is considered relevant to trigger the sending of alerts/warnings. The relevant data for triggering warnings are those relating to unplanned stoppages that have occurred and data relating to new production that has occurred with a production deviation below the expected number. |
4 | Send alerts | Sending alerts to the NAS regarding urgent stoppages or production deviations. |
# | Service Name | Description |
---|---|---|
1 | Receive and store data | This component provides API services for receiving and storing data in the database. One example is the reception of Requests, which consist of data related to requests for information made by users to other services in the CA-FoFS system and which are stored in the database. |
2 | Material replacement management | This component provides API services for managing material replenishment information on production lines. It currently includes services related to the replenishment of labels and components needed for production. When an operator requests the replenishment of materials, this component receives the request, stores the information in the database and sends an alert to the NAS. Once the replenishment is complete, the information about the missing material is deleted from the database. In this way, supervisors can use the application to view a list of missing materials on the production lines and take the necessary action. |
3 | Send alerts | Sending alerts to the NAS regarding requests to replace components or labels on production lines. |
4 | Old data removal | This component has a service that operates in the background and removes old data from the database that is no longer needed by the application. |
# | Service Name | Input Parameter(s) | Description |
---|---|---|---|
1 | Device Info | Device ID | It provides information about the device, including its type (wearable, tablet, etc.). If the device is associated with an operator, it provides information about the production line the device is associated with, the product currently in production, its label, the list of missing components on the line that need replacing and the work shift. If the device is associated with a coordinator, it provides information about the coordinator and the production lines for which he is responsible. |
2 | Operator Info | Worker’s firebase ID | It provides information about the operator and the production lines on which he is working on the current day, along with their working schedules. |
3 | Stops Info | Start date * End date * Planned * | It provides information on the stops that have taken place according to the dates entered, depending on whether the stops were planned or not. |
4 | Line Info | Production line ID Start date * End date * | It provides information relating to the production line, providing data on the stoppages and productions that have taken place on the line, according to the dates entered. It also provides information relating to the coordinator responsible for the line and the products that are or were being produced during those dates. |
5 | Supervisor Info | Worker’s firebase ID Day * | Provides information about the supervisor and the production lines he was supervising on the day entered, along with the respective working schedules, according to the request. |
6 | Get Productions Info | Production line ID Start date * End date * | Provides a list of productions that have taken place according to the dates entered. |
7 | Get Components Device Info | Device ID | Provides the list of components being used on the production line to which the device is associated. |
8 | Product Info | Production line ID | Provides information on the product being produced on the production line when the request for information was made. |
9 | Coordinator Info | Worker’s firebase ID | Provides information on the coordinator and the production lines for which he is responsible, according to the request. |
10 | Notification Recommendation | Notification type Worker ID | Provides, if possible (if the employee already has working schedule defined for that day), a date to send them a notification regarding certain information, such as sending a graph or other information. If this is not possible, it sends the day and part of the shift on which the notification should be sent. |
11 | Get Missing Components | Production line ID * Component ID * Day * | It returns information on the missing components, the respective production lines affected and the date on which the request to replace the component was made, depending on the search parameters. |
12 | Get Missing Labels | Production line ID * Label reference * Day * | Returns information on the missing labels, the respective production lines affected and the date on which the label replacement request was made, according to the search parameters. |
13 | Get Alerts History | Alert type * Start date * End Date * | Returns the history of alerts sent by the application, according to the search parameters. |
14 | Get Requests History | Order type * Day * worker ID * | Returns the history of requests for viewing the information requested by users, according to the search parameters. |
# | Description | Application(s) | Results |
---|---|---|---|
1 | Identification of changes when inserting new data into the simulated database and recognition of urgent or important situations during the analysis of this data. | Context Acquisition | Working correctly |
2 | Verification of whether, after identifying changes in the data, there is an addition or update in the Context Engine database. | Context Acquisition | Working correctly |
3 | Verification of the sending of alerts/notifications to the NAS when necessary and confirmation in the history of the Context Engine database regarding the recording of the sent alerts. | Context Acquisition Context Builder | Working correctly |
4 | Verification of the application’s ability to manage/clean data by eliminating those older than deemed valid after their addition to the database. | Context Builder | Working correctly |
5 | Verification of the correct operation of the services by executing API methods with various data, analyzing different situations. | Context Builder Context Server | Working correctly |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Monteiro, P.; Pereira, R.; Nunes, R.; Reis, A.; Pinto, T. Context-Aware System for Information Flow Management in Factories of the Future. Appl. Sci. 2024, 14, 3907. https://doi.org/10.3390/app14093907
Monteiro P, Pereira R, Nunes R, Reis A, Pinto T. Context-Aware System for Information Flow Management in Factories of the Future. Applied Sciences. 2024; 14(9):3907. https://doi.org/10.3390/app14093907
Chicago/Turabian StyleMonteiro, Pedro, Rodrigo Pereira, Ricardo Nunes, Arsénio Reis, and Tiago Pinto. 2024. "Context-Aware System for Information Flow Management in Factories of the Future" Applied Sciences 14, no. 9: 3907. https://doi.org/10.3390/app14093907
APA StyleMonteiro, P., Pereira, R., Nunes, R., Reis, A., & Pinto, T. (2024). Context-Aware System for Information Flow Management in Factories of the Future. Applied Sciences, 14(9), 3907. https://doi.org/10.3390/app14093907