Advancing Sustainable Cyber-Physical System Development with a Digital Twins and Language Engineering Approach: Smart Greenhouse Applications
Abstract
:1. Introduction
1.1. Brief History of Digital Twin Technology
1.2. Advances in the Agriculture Sector
1.3. Model-Driven Engineering as a Transformative Approach in Smart Agriculture
- An abstracted software system architecture for a digital twin IoT monitoring system that demonstrates the concepts and components of the whole system.
- A DSL family, or GreenH, for modeling and designing a digital twins-based greenhouse monitoring system. GreenH comprises three DSLs, with each one being responsible for capturing a specific view of the domain: GreenH Design DSL for representing the structural view including IoT smart devices, crop growth, and greenhouse characteristics; GreenH Flow DSL for capturing greenhouse behavior in terms of data flow and control, including data pipelines and data transmitting format and controlling conditions; and GreenH Twin for representing the structural and behavioral views of the smart greenhouses in the virtual environment, thereby forming the corresponding system.
- Formal definitions of the abstract and concrete syntax and semantics of the proposed languages, using a metamodeling approach and the extended Backus–Naur form (EBNF) notation, respectively.
- A model transformation engine to deduce GreenH Twin elements from the GreenH Design and GreenH Flow models.
- An execution engine/model transformation and code generation strategy to support the automation of creating digital twin simulation systems for monitoring smart greenhouses.
- The specificity of DSLs enables quicker iterations and modifications, which are essential in dynamic IoT environments, unlike LLMs, which may require extensive tuning or many user prompts.
- DSLs focus on specific functionalities, use available resources more efficiently, and avoid the generality overhead associated with LLMs and generative approaches.
- DSLs adhere to specific standards within their domain and promote interoperability among systems, which poses challenges for LLMs across different domains.
2. Related Research
2.1. Digital Twins in Smart Agriculture
2.1.1. Digital Twins in Internet of Things
2.1.2. Digital Twins in Controlled Environment Agriculture
2.2. Languages Engineering Approach in Modeling and Simulation Systems
2.3. Domain-Specific Languages and the Agriculture Sector
3. Methodology
3.1. Domain Analysis
3.1.1. Temperate Fruits Development and Growth
3.1.2. Types of Greenhouses
3.1.3. Sensors: Types, Number and Locations
- N is the number of sensors. Each sensor is located in a single zone for microclimate controlling and monitoring tasks.
- A is the measurable floor area of the greenhouse.
- C is a constant to represent the nominal coverage area for a sensor. Then, a coverage function can be defined where:
- Let H be the height of the greenhouse; for some shapes, we consider the height in the middle, where:
- Let K be the shape coefficient constant that adjusts for the complexity of the greenhouse’s shape and internal structures. If is the set of all possible shapes () with the same floor area (), then K can be seen as: , where:
3.1.4. Simulation and Visualization
3.2. Definition of Requirements of Domain Specific Languages
Listing 1. A snapshot of GreenH Flow to show a humidity monitoring and control process. |
4. Design Principles of the GreenH Language Syntax
4.1. Aspect Orientation and Separation of Concerns
- (1)
- The metamodel of GreenH Design DSL, which encapsulates essential greenhouse characteristics: shape, dimensions, and growth development stages (Figure 4a). Moreover, it expresses its key IoT system components: environmental sensors, actuators, and conditions, and their interrelations.
- (2)
- The metamodel of GreenH Flow DSL, which encapsulates critical control processes and constraints in terms of data flow and data filters (Figure 4b), thereby supporting diverse greenhouse monitoring and control cases.
- (3)
- The metamodel of GreenH Twin, which encapsulates the virtual entities and behavior corresponding to both physical and logical concepts that appear in the previous metamodels, thereby forming various digital twin simulation scenarios (Figure 4c).
4.2. Integration Functionality of GreenH Language
Listing 2. A snapshot of GreenH Design to show an example of specifying a configuration. |
Listing 3. A snapshot of a corresponding GreenH Flow to show the predefined context that creates a smart control rule. |
4.3. Extendibility Features of GreenH
Listing 4. A snapshot of GreenH Design EBNF definition to extend the language with new features. |
Listing 5. A snapshot of GreenH Flow to show the controlling rule corresponds to the extension. |
4.4. Testability Features of the Language Design
5. Definition of GreenH Language Syntax
5.1. Formalizing GreenH Concrete Syntax
5.1.1. Formalizing the Concrete Syntax of GreenH Design DSL
- Greenhouse Design: a concept of the language that expresses the syntax and constructs of the overall structure of a greenhouse design, and that encompasses its shape, dimensions, sensors, actuators, and growth journey details as enclosed in a specific format. This can be formally defined using EBNF notation as:
- Greenhouse Shape: a concept of the language that specifies the geometric shape of the greenhouse, which is a critical factor in determining the required number of sensors and their positions inside the greenhouse area. The common types of greenhouse shapes, such as square, rectangle, and dome, are captured using ShapeType to provide more flexibility in design options. This can be formally defined using EBNF notation as:
- Dimensions: a concept of the language that describes the syntax and constructs the dimensions of the greenhouse, which are fundamental for planning the size and area along with its shape. This can be formally defined using EBNF notation as:
- Environmental Sensors: a concept of the language for describing the syntax and constructs of special types of sensors, installed in specific locations, and their tasks, which are utilized for monitoring environmental conditions inside the greenhouse, such as humidity, temperature, and soil moisture. Initial readings can be determined to enable monitoring and control of the smart system according to an acceptable range. This can be formally defined using EBNF notation as:
- Actuator: a concept of the language that expresses the syntax and constructs of actuators that can act on various greenhouse components that are placed in specific locations. It can carry out actions in response to rules for actively managing the environment inside the greenhouse. The actuator can be specialized into different types of actuators for specific greenhouse systems, such as heating and lighting systems using the ActuatorType element. This can be formally defined using EBNF notation as:
- Growth Manager: a concept of the language for expressing the growth and development stages of a specific type of crop planted inside the greenhouse. As explained in Section 3.1.1, the temperature required by temperate fruits vary for each stage of growth development. The details of each growth stage, including its purpose, duration, and optimal environmental conditions, are captured in the language using the Stage element. This enables the language that describes the growth journey in detail, which can be defined formally using EBNF notation as:
5.1.2. Formalizing the Concrete Syntax of GreenH Flow DSL
- Greenhouse flow: a concept of the flow language used to express syntax and construct the overall data flow behavior of the greenhouse smart system. It is worth mentioning that the greenhouse components that are defined previously using GreenH Design language can be referenced in this model via design_source element. These can be formally defined using EBNF notation as:
- Data Pipes: a concept of the flow language used to express syntax and construct the data flow within the system, defining how data are taken in from sensors, processed, and output. It contains one or more Pipe elements, each specifying a single data pipeline within the system, including the input source of data, the filter applied, and the directed control system. This can be formally defined using EBNF notation as:
- Data Filters: a concept of the flow language used to express the syntax and constructs of filters used to process data within pipes. It comprises of multiple definitions of two types of elements, namely DataFilter and ControlRule. Each filter has a type (e.g., threshold, range) and an associated growth development stage. On the other hand, the rule element describes the condition(s) that dictate how data are filtered and action triggering based on data conditions. This can be formally defined using EBNF notation as:
- Actions: a concept of the flow language used to describe the syntax and constructs of the collection of actions. Each Action describes a specific operation to be performed by the system in a particular duration based on data conditions and decision-making logic, expressed in a relevant DataFilter element. This can be formally defined using EBNF notation as:
5.1.3. Formalizing the Concrete Syntax of GreenH Twin DSL
- Virtual World: an element of the digital twins language used to bind the virtual representations of all greenhouse structural and behavioral components corresponding to real-world ones expressed in GreenH Design and GreenH Flow DSLs. This can be formally defined using EBNF notation as:
- Sensor Instance: an element of the digital twins language used to represent a virtual entity from a corresponding one that is expressed in GreenH Design language. This can be formally defined using EBNF notation as:
- Simulation: an element of the digital twins language used to create simulations for monitoring/testing scenarios. It provides the capability to monitor the system behavior in various real-world scenarios based on real data. The Simulation element comprises the simulation environment settings and scenarios. This can be formally defined using EBNF notation as:
- Agricultural Scenario: a concept of the language that acts as a contextual container to group a series of processes that relate to the simulation. It can be utilized to define a specific set of circumstances under which the contained processes will operate. Each process includes a name, a condition under which the process should be executed, and an action to be performed if the condition is met. This can be formally defined using EBNF notation as:
- Action: a concept of the language that describes the action to trigger when the condition of a process is met. The details include the name and the command to execute. This can be formally defined using EBNF notation as:
6. Use Case: Digital Twin Internet of Things Temperature Monitoring System
Representing a Simple Monitoring System Using GeenH DSLs
Listing 6. A snapshot of GreenH Design to represent the structure of the greenhouse. |
Listing 7. A snapshot of GreenH Flow to represent the data flow and control in the greenhouse. |
Listing 8. A snapshot of the translated GreenH Twin representing the corresponding digital twin simulation system within the greenhouse. |
7. Language Evaluation Strategy
7.1. Expert Participant Characteristics
7.2. Evaluation Strategy and Criteria
7.3. Results Discussion and Final Remarks
7.4. GreenH Verification Using Model Checking
Listing 9: The GreenH Flow DSL example used for verification. |
- Safety property:
- When the temperature is above 26 degrees and the cooling level is not already high, the system transitions the cooling level to high.
- When the temperature falls to 22 degrees and lower and the cooling level is not already low, the system transitions the cooling level to low.
- Cooling system actions are gradually phased out by decrementing the timer and turning off the system when the timer reaches 1.
- Liveness property:
- When the temperature exceeds 26 degrees, the cooling system will eventually be set to high.
- When the temperature falls to 22 degrees or lower, the cooling system will eventually be set to low.
8. Conclusions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Attaran, M.; Celik, B.G. Digital Twin: Benefits, use cases, challenges, and opportunities. Decis. Anal. J. 2023, 6, 100165. [Google Scholar] [CrossRef]
- Anshari, M.; Hamdan, M. Enhancing e-government with a digital twin for innovation management. J. Sci. Technol. Policy Manag. 2023, 14, 1055–1065. [Google Scholar] [CrossRef]
- Armeni, P.; Polat, I.; De Rossi, L.M.; Diaferia, L.; Meregalli, S.; Gatti, A. Digital twins in healthcare: Is it the beginning of a new era of evidence-based medicine? A critical review. J. Pers. Med. 2022, 12, 1255. [Google Scholar] [CrossRef]
- Singh, M.; Fuenmayor, E.; Hinchy, E.P.; Qiao, Y.; Murray, N.; Devine, D. Digital Twin: Origin to Future. Appl. Syst. Innov. 2021, 4, 36. [Google Scholar] [CrossRef]
- Costello, K.; Omale, G. Gartner Survey Reveals Digital Twins Are Entering Mainstream Use; Gartner Inc.: Stamford, CT, USA, 2019; Available online: https://www.gartner.com/en/newsroom/press-releases/2019-02-20-gartner-survey-reveals-digital-twins-are-entering-mai (accessed on 22 February 2024).
- Rayhana, R.; Xiao, G.; Liu, Z. Internet of things empowered smart greenhouse farming. IEEE J. Radio Freq. Identif. 2020, 4, 195–211. [Google Scholar] [CrossRef]
- Soussi, A.; Zero, E.; Sacile, R.; Trinchero, D.; Fossa, M. Smart Sensors and Smart Data for Precision Agriculture: A Review. Sensors 2024, 24, 2647. [Google Scholar] [CrossRef]
- Bucchiarone, A.; Cabot, J.; Paige, R.F.; Pierantonio, A. Grand challenges in model-driven engineering: An analysis of the state of the research. Softw. Syst. Model. 2020, 19, 5–13. [Google Scholar] [CrossRef]
- Kamburjan, E.; Sieve, R.; Prabhu, C.; Amato, M.; Barmina, G.; Occhipinti, E.; Johnsen, E.B. GreenhouseDT: An Exemplar for Digital Twins. In Proceedings of the SEAMS 2024, Lisbon, Portugal, 15–16 April 2024. [Google Scholar]
- Barricelli, B.R.; Casiraghi, E.; Fogli, D. A survey on digital twin: Definitions, characteristics, applications, and design implications. IEEE Access 2019, 7, 167653–167671. [Google Scholar] [CrossRef]
- Li, M.; Wang, R.; Zhou, X.; Zhu, Z.; Wen, Y.; Tan, R. ChatTwin: Toward automated digital twin generation for data center via large language models. In Proceedings of the 10th ACM International Conference on Systems for Energy-Efficient Buildings, Cities, and Transportation, Istanbul, Turkey, 15–16 November 2023; pp. 208–211. [Google Scholar]
- Sun, Y.; Zhang, Q.; Bao, J.; Lu, Y.; Liu, S. Empowering digital twins with large language models for global temporal feature learning. J. Manuf. Syst. 2024, 74, 83–99. [Google Scholar] [CrossRef]
- Björnsson, B.; Borrebaeck, C.; Elander, N.; Gasslander, T.; Gawel, D.R.; Gustafsson, M.; Jörnsten, R.; Lee, E.J.; Li, X.; Lilja, S.; et al. Digital twins to personalize medicine. Genome Med. 2020, 12, 4. [Google Scholar] [CrossRef]
- Bersani, C.; Ruggiero, C.; Sacile, R.; Soussi, A.; Zero, E. Internet of Things Approaches for Monitoring and Control of Smart Greenhouses in Industry 4.0. Energies 2022, 15, 3834. [Google Scholar] [CrossRef]
- Tripathy, P.K.; Tripathy, A.K.; Agarwal, A.; Mohanty, S.P. MyGreen: An IoT-enabled smart greenhouse for sustainable agriculture. IEEE Consum. Electron. Mag. 2021, 10, 57–62. [Google Scholar] [CrossRef]
- Subahi, A.F.; Bouazza, K.E. An intelligent IoT-based system design for controlling and monitoring greenhouse temperature. IEEE Access 2020, 8, 125488–125500. [Google Scholar] [CrossRef]
- Arora, N.K. Agricultural sustainability and food security. Environ. Sustain. 2018, 1, 217–219. [Google Scholar] [CrossRef]
- Fei, X.; Xiao-Long, W.; Yong, X. Development of energy saving and rapid temperature control technology for intelligent greenhouses. IEEE Access 2021, 9, 29677–29685. [Google Scholar] [CrossRef]
- Sengupta, A.; Debnath, B.; Das, A.; De, D. FarmFox: A quad-sensor-based IoT box for precision agriculture. IEEE Consum. Electron. Mag. 2021, 10, 63–68. [Google Scholar] [CrossRef]
- Pandey, C.; Sethy, P.K.; Behera, S.K.; Vishwakarma, J.; Tande, V. Smart agriculture: Technological advancements on agriculture—A systematical review. Deep. Learn. Sustain. Agric. 2022, 1, 1–56. [Google Scholar]
- Verbruggen, C.; Snoeck, M. Practitioners’ experiences with model-driven engineering: A meta-review. Softw. Syst. Model. 2023, 22, 111–130. [Google Scholar] [CrossRef]
- Peterson, T.A. Systems engineering: Transforming digital transformation. In Proceedings of the INCOSE International Symposium, Orlando, FL, USA, 20–25 July 2019. [Google Scholar]
- Govindasamy, H.S.; Jayaraman, R.; Taspinar, B.; Lehner, D.; Wimmer, M. Air quality management: An exemplar for model-driven digital twin engineering. In Proceedings of the 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), Fukuoka, Japan, 10–15 October 2021. [Google Scholar]
- Bordeleau, F.; Combemale, B.; Eramo, R.; Van Den Brand, M.; Wimmer, M. Towards model-driven digital twin engineering: Current opportunities and future challenges. In Proceedings of the Systems Modelling and Management: First International Conference, ICSMM 2020, Bergen, Norway, 25–26 June 2020. [Google Scholar]
- Palchunov, D.; Vaganova, A. Methods for Developing Digital Twins of Roles Based on Semantic Domain-Specific Languages. In Proceedings of the 2021 IEEE 22nd International Conference of Young Professionals in Electron Devices and Materials (EDM), Souzga, Russia, 30 June–4 July 2021; pp. 515–519. [Google Scholar]
- Hernández-Morales, C.A.; Luna-Rivera, J.M.; Perez-Jimenez, R. Design and deployment of a practical IoT-based monitoring system for protected cultivations. Comput. Commun. 2022, 186, 51–64. [Google Scholar] [CrossRef]
- Yang, J.; Liu, M.; Lu, J.; Miao, Y.; Hossain, M.A.; Alhamid, M.F. Botanical internet of things: Toward smart indoor farming by connecting people, plant, data and clouds. Mob. Netw. Appl. 2018, 23, 188–202. [Google Scholar] [CrossRef]
- Khoa, T.A.; Man, M.M.; Nguyen, T.Y.; Nguyen, V.; Nam, N.H. Smart agriculture using IoT multi-sensors: A novel watering management system. J. Sens. Actuator Netw. 2019, 8, 45. [Google Scholar] [CrossRef]
- Aafreen, R.; Neyaz, S.Y.; Shamim, R.; Beg, M.S. An IoT based system for telemetry and control of Greenhouse environment. In Proceedings of the 2019 International Conference on Electrical, Electronics and Computer Engineering (UPCON), Aligarh, India, 8–10 November 2019. [Google Scholar]
- Alves, R.G.; Souza, G.; Maia, R.F.; Tran, A.L.H.; Kamienski, C.; Soininen, J.P.; Aquino, P.T.; Lima, F. A digital twin for smart farming. In Proceedings of the 2019 IEEE Global Humanitarian Technology Conference (GHTC), Seattle, WA, USA, 17–20 October 2019. [Google Scholar]
- Verdouw, C.; Tekinerdogan, B.; Beulens, A.; Wolfert, S. Digital twins in smart farming. Agric. Syst. 2021, 189, 103046. [Google Scholar] [CrossRef]
- Angin, P.; Anisi, M.H.; Göksel, F.; Gürsoy, C.; Büyükgülcü, A. AgriLoRa: A digital twin framework for smart agriculture. J. Wirel. Mob. Netw. Ubiquitous Comput. Dependable Appl. 2020, 11, 77–96. [Google Scholar]
- Chaux, J.D.; Sanchez-Londono, D.; Barbieri, G. A digital twin architecture to optimize productivity within controlled environment agriculture. Appl. Sci. 2021, 11, 8875. [Google Scholar] [CrossRef]
- González, J.P.; Sanchez-Londoño, D.; Barbieri, G. A Monitoring Digital Twin for Services of Controlled Environment Agriculture. IFAC-PapersOnLine 2022, 55, 85–90. [Google Scholar] [CrossRef]
- Durão, L.F.C.; Haag, S.; Anderl, R.; Schützer, K.; Zancul, E. Digital twin requirements in the context of industry 4.0. In Product Lifecycle Management to Support Industry 4.0, Proceedings of the 15th IFIP WG 5.1 International Conference (PLM 2018), Turin, Italy, 2–4 July 2018; Springer: Cham, Switzerland, 2018. [Google Scholar]
- Ewald, R.; Uhrmacher, A.M. SESSL: A domain-specific language for simulation experiments. ACM Trans. Model. Comput. Simul. (TOMACS) 2014, 24, 1–25. [Google Scholar] [CrossRef]
- Miller, J.A.; Han, J.; Hybinette, M. Using domain specific language for modeling and simulation: Scalation as a case study. In Proceedings of the 2010 Winter Simulation Conference, Baltimore, MD, USA, 5–8 December 2010. [Google Scholar]
- Dhouib, S.; Kchir, S.; Stinckwich, S.; Ziadi, T.; Ziane, M. A domain-specific language to design, simulate and deploy robotic applications. In Proceedings of the Simulation, Modeling, and Programming for Autonomous Robots: Third International Conference (SIMPAR 2012), Tsukuba, Japan, 5–8 November 2012. [Google Scholar]
- Barriga, J.A.; Clemente, P.J.; Sosa-Sánchez, E.; Prieto, Á.E. SimulateIoT: Domain Specific Language to design, code generation and execute IoT simulation environments. IEEE Access 2021, 9, 92531–92552. [Google Scholar] [CrossRef]
- Barriga, J.A.; Clemente, P.J.; Hernández, J.; Pérez-Toledano, M.A. SimulateIoT-FIWARE: Domain specific language to design, code generation and execute IoT simulation environments on FIWARE. IEEE Access 2022, 10, 7800–7822. [Google Scholar] [CrossRef]
- Franceschini, R.; Bisgambiglia, P.A.; Bisgambiglia, P.; Hill, D. DEVS-Ruby: A Domain Specific Language for DEVS Modeling and Simulation. In Proceedings of the 2014 Symposium on Theory of Modeling & Simulation, Tampa, FL, USA, 13–16 April 2014. [Google Scholar]
- Groeneveld, D.; Tekinerdogan, B.; Garousi, V.; Catal, C. A domain-specific language framework for farm management information systems in precision agriculture. Precis. Agric. 2021, 22, 1067–1106. [Google Scholar] [CrossRef]
- Kawtrakul, A. Ontology engineering and knowledge services for agriculture domain. J. Integr. Agric. 2012, 11, 741–751. [Google Scholar] [CrossRef]
- Ceh, I.; Crepinšek, M.; Kosar, T.; Mernik, M. Ontology driven development of domain-specific languages. Comput. Sci. Inf. Syst. 2011, 8, 317–343. [Google Scholar] [CrossRef]
- Lamy, J.B. Owlready: Ontology-oriented programming in Python with automatic classification and high level constructs for biomedical ontologies. Artif. Intell. Med. 2017, 80, 11–28. [Google Scholar] [CrossRef] [PubMed]
- Allocca, C.; d’Aquin, M.; Motta, E. Towards a formalization of ontology relations in the context of ontology repositories. In Knowledge Discovery, Knowledge Engineering and Knowledge Management, Proceedings of the First International Joint Conference (IC3K 2009), Funchal, Portugal, 6–8 October 2009; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
- Mani, P.; Thirumalai Natesan, V. Experimental investigation of drying characteristics of lima beans with passive and active mode greenhouse solar dryers. J. Food Process Eng. 2021, 44, e13667. [Google Scholar] [CrossRef]
- Baglivo, C.; Mazzeo, D.; Panico, S.; Bonuso, S.; Matera, N.; Congedo, P.M.; Oliveti, G. Complete greenhouse dynamic simulation tool to assess the crop thermal well-being and energy needs. Appl. Therm. Eng. 2020, 179, 115698. [Google Scholar] [CrossRef]
- Peña-Fernández, A.; Colón-Reynoso, M.A.; Mazuela, P. Geometric analysis of greenhouse roofs for energy efficiency optimization and condensation drip reduction. Agriculture 2024, 14, 216. [Google Scholar] [CrossRef]
- Wangkahart, S.; Junsiri, C.; Srichat, A.; Poojeera, S.; Laloon, K.; Hongtong, K.; Boupha, P. Using Greenhouse Modelling to Identify the Optimal Conditions for Growing Crops in Northeastern Thailand. Math. Model. Eng. Probl. 2022, 9, 1648–1658. [Google Scholar] [CrossRef]
- Łysiak, G.P.; Szot, I. The use of temperature based indices for estimation of fruit production conditions and risks in temperate climates. Agriculture 2023, 13, 960. [Google Scholar] [CrossRef]
- Lata, S.; Verma, H.K. Selection of number and locations of temperature and luminosity sensors in intelligent greenhouse. Int. J. Appl. Res. 2018, 13, 10965–10971. [Google Scholar]
- Lee, S.Y.; Lee, I.B.; Yeo, U.H.; Kim, R.W.; Kim, J.G. Optimal sensor placement for monitoring and controlling greenhouse internal environments. Biosyst. Eng. 2019, 188, 190–206. [Google Scholar] [CrossRef]
- Ajani, O.S.; Aboyeji, E.; Mallipeddi, R.; Uyeh, D.D.; Ha, Y.; Park, T. A genetic programming-based optimal sensor placement for greenhouse monitoring and control. Front. Plant Sci. 2023, 14, 1152036. [Google Scholar] [CrossRef] [PubMed]
- Wagg, D.J.; Worden, K.; Barthorpe, R.J.; Gardner, P. Digital twins: State-of-the-art and future directions for modeling and simulation in engineering dynamics applications. ASCE-ASME J. Risk Uncertain. Eng. Syst. Part B Mech. Eng. 2020, 6, 030901. [Google Scholar] [CrossRef]
- Agalianos, K.; Ponis, S.T.; Aretoulaki, E.; Plakas, G.; Efthymiou, O. Discrete event simulation and digital twins: Review and challenges for logistics. Procedia Manuf. 2020, 51, 1636–1677. [Google Scholar] [CrossRef]
- Jahić, B.; Guelfi, N.; Ries, B. SEMKIS-DSL: A domain-specific language to support requirements engineering of datasets and neural network recognition. Information 2023, 14, 213. [Google Scholar] [CrossRef]
- Han, Z.; Qazi, S.; Werner, M.; Devarajegowda, K.; Ecker, W. On Self-Verifying DSL Generation for Embedded Systems Automation. In Proceedings of the 24th MBMV Workshop 2021, Virtual Event, Germany, 18–19 March 2021. [Google Scholar]
- Amdah, L.; Anwar, A. A DSL for collaborative business process. In Proceedings of the 2020 International Conference on Intelligent Systems and Computer Vision (ISCV), Fez, Morocco, 9–11 June 2020. [Google Scholar]
- Huisman, M.; Wijs, A. Model Checking Algorithms. In Concise Guide to Software Verification: From Model Checking to Annotation Checking; Springer International Publishing: Cham, Switzerland, 2023; pp. 79–106. [Google Scholar]
- Pollak, D.; Layka, V.; Sacco, A. Beginning Scala 3: A Functional and Object-Oriented Java Language, 3rd ed.; Apress: Berkeley, CA, USA, 2022; pp. 237–245. [Google Scholar]
- Wang, B.; Wang, Z.; Wang, X.; Cao, Y.; Saurous, R.A.; Kim, Y. Grammar prompting for domain-specific language generation with large language models. Adv. Neural Inf. Process. Syst. 2024, 36, 1–26. [Google Scholar]
- Poltronieri, I.; Zorzo, A.F.; Bernardino, M.; de Borba Campos, M. Usa-DSL: Usability evaluation framework for domain-specific languages. In Proceedings of the 33rd Annual ACM Symposium on Applied Computing 2018, Pau, France, 9–13 April 2018. [Google Scholar]
- Nielsen, J. Usability inspection methods. In Proceedings of the Conference Companion on Human Factors in Computing Systems, Boston, MA, USA, 24–28 April 1994. [Google Scholar]
- Kahraman, G.; Bilgen, S. A framework for qualitative assessment of domain-specific languages. Softw. Syst. Model. 2015, 14, 1505–1531. [Google Scholar] [CrossRef]
- Alaca, O.F.; Tezel, B.T.; Challenger, M.; Goulão, M.; Amaral, V.; Kardas, G. AgentDSM-Eval: A framework for the evaluation of domain-specific modeling languages for multi-agent systems. Comput. Stand. Interfaces 2021, 76, 103513. [Google Scholar] [CrossRef]
Ref. | Parameters | IoT Systems |
---|---|---|
[15] | Temperature, humidity, light intensity, pH value, and CO2 level | Temperature, light control, air pollution, and soil moisture monitoring |
[16] | Temperature and energy | Temperature control (PID) |
[18] | Temperature and energy | Temperature control (Fuzzy logic) |
[26] | temperature and humidity | Temperature control, humidity monitoring |
[27] | Temperature, humidity, luminosity, and CO2 | Temperature control, humidity, luminosity, and CO2 monitoring |
[28] | Soil moisture, humidity, and temperature | Watering management system |
[29] | CO2 levels, light intensity, and humidity | Soil irrigation system and more |
Ref. | DSL | Purpose | Language | Approach | Type |
---|---|---|---|---|---|
[36] | SESSL | Writing simulation experiments | Scala | LE | Embedded |
[37] | ScalaTion | Writing clear, concise, and intuitive simulation programs | Scala | LE | Embedded |
[38] | RobotML | Designing, simulating, and deploying robotic applications | DSL | MDE | Metamodel |
[39] | SimulateIoT | Designing simulation environments for IoT systems | DSL | MDE | Metamodel |
[40] | SimulateIoT-FIWARE | Designing simulation environments for IoT systems for FIWARE platform. | DSL | MDE | Metamodel |
[41] | DEVS-Ruby | Modelling and simulation of discrete event system specification (DEVS) | DSL | MDE | Finite StateAutomata |
Stage No. | Apple | Strawberry |
---|---|---|
1 | Purpose: Dormancy and Bud Break; Temp: below 7 °C; Period: 3–4 months | Purpose: Planting and Root Development; Temp: 18 Day–12 Night °C; Period: 1–2 months |
2 | Purpose: Growth of Leaf and Floral Initiation; Temp: 21–24 °C; Period: 1–2 months | Purpose: Vegetative Growth; Tempe: 25 Day–12 Night °C; Period: 2–3 months |
3 | Purpose: Fruit Development and Growth; Temp: 22 Day–12 Night °C; Period: 30–40 days | Purpose: Flowering and Fruiting; Temp: 25 Day–12 Night °C; Period: 3–4 months |
4 | Purpose: Late Fruit Maturation and Harvest; Temp: 22 Day–12 Night °C; Period: 3–4 months | - |
IoT System | Parameter to Measure | Measurement Unit |
---|---|---|
Temperature change parameter | Internal heating temperature | Celsius |
Humidity change parameter | Internal humidity level | Percentage |
Light change parameter | The intensity of light on surface | Lux |
Energy consumption parameter | Electrical power consumed by the system. | Watt |
Communication parameter | Data transmission between IoT components | Bits per second |
ID | Criteria | Description |
---|---|---|
C1 | Expressiveness | Ability to model all necessary domain concepts accurately and completely. |
C2 | Readability | Clarity of the language syntax. |
C3 | Usability | Ease of use and learning for new users. |
C4 | Consistency | Uniformity in language constructs and their usage. |
C5 | Correctness | Enforcement of domain constraints to avoid invalid models. |
C6 | Scalability | Ability to handle different sizes and complexities of models. |
ID | Score (1) | Score (2) | Score (3) | Score (4) | Score (5) | Score (6) | Score (7) | Average Score | Summary of Expert Notes |
---|---|---|---|---|---|---|---|---|---|
C1 | 4 | 4 | 4 | 3 | 3.5 | 4 | 3 | 3.64 | Missing constructs for advanced scenarios in GreenH Design, such as network connection protocols and other types of smart devices. |
C2 | 4 | 5 | 4 | 4 | 4 | 3 | 3 | 3.86 | DSLs syntax is clear for target users in GreenH Design and Flow DSLs; further simplification is recommended in the Twin DSL. |
C3 | 4 | 3 | 4 | 3 | 4 | 3 | 2.5 | 3.00 | Difficulties might appear with more complex simulation scenarios. Enabling the execution engine to generate more boilerplate code is required or consideration of a template-based approach for code generation. |
C4 | 5 | 5 | 4 | 4 | 5 | 4 | 3 | 4.29 | DSLs constructs are consistent and each DSL focuses on a particular aspect of the language. |
C5 | 4 | 4 | 4 | 3.5 | 3 | 3 | 3 | 3.50 | The language is defined and restricted to a metamodel and EBNF. Further correctness tests are required in later stages of development. |
C6 | 5 | 3.5 | 4 | 4 | 4 | 3.5 | 4 | 4 | The DSLs can be scalable; advanced experiments are required |
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 author. 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
Subahi, A.F. Advancing Sustainable Cyber-Physical System Development with a Digital Twins and Language Engineering Approach: Smart Greenhouse Applications. Technologies 2024, 12, 147. https://doi.org/10.3390/technologies12090147
Subahi AF. Advancing Sustainable Cyber-Physical System Development with a Digital Twins and Language Engineering Approach: Smart Greenhouse Applications. Technologies. 2024; 12(9):147. https://doi.org/10.3390/technologies12090147
Chicago/Turabian StyleSubahi, Ahmad F. 2024. "Advancing Sustainable Cyber-Physical System Development with a Digital Twins and Language Engineering Approach: Smart Greenhouse Applications" Technologies 12, no. 9: 147. https://doi.org/10.3390/technologies12090147