Graphical User Interface Optimalization Based C# with Visual Studio to Operator Control Unit Rhino Robot

System of communication and data storage on the old version Graphical User Interface (GUI) can not developed or modified because it is not made in a modular way. In addition, the memory capacity is quite large because there are XNA Framework function and excessive robot control menus. Based on these problems we need to optimize GUI on the Operator Control Unit (OCU) Rhino robot. Programming language using C # with Integrated Development Environment (IDE) Visual Studio. Communication systems and data storage robots are grouped into 3 parts of the program with inheritance class. It creation use one of the IDE features of the Windows Presentation Foundation (WPF). The result of this research is program of communication system and data storage more structured so that can be developed for further research. After that, the memory capacity of the new version of GUI is 57.4 MB with an average memory usage of about 513.5 MB and the number of GUI pages as many as 8 with 3 main page details and 5 supporting pages to control robot motion. Keywords―C#, GUI, IDE, OCU, WPF, Visual Studio, XNA Framework.


I. INTRODUCTION
Rhino robot has arm manipulator and chassis. The chassis part works for robot mobility. While the arm is assigned to take the object considered dangerous. Purpose of this robot was developed to minimize the risk of harm to humans. This robot is controlled by humans remotely with a control device called the Operator Control Unit (OCU).
OCU Rhino robot is shaped like a toughbook laptop that has a Joystick and Graphical User Interface (GUI) with Windows operating system 10. Each serves as a robot controller tool for humans. In Joystick, Robot Control is done using key combinations. Then, users can observe the environment directly and determine the menus of control functions through the GUI.
GUI that has been made there are some problems such as communication systems and data storage robot on the GUI is difficult to develop and modified because it is not made in modular. Whereas Rhino robot is still possible to be developed into several versions of different robots. In addition, there are excessive menu controller functions and use one of the features XNA Framework on the GUI. It affects the speed performance when the GUI is run. With these problems need to optimize the GUI on OCU Rhino robot.
In this study, GUI optimization is based on C # programming language with Visual Studio's Integrated Development Environment (IDE). Designing the display design and menu layout using one of the features of Visual Studio is Windows Presentation Foundation (WPF). The GUI page is designed to minimize the memory capacity so that the author gives the target an 8-page GUI with details of 3 main pages and 5 pages of support. In the structure of communication programs and data storage robot using inheritance method class or derived class. And the use of this derived class to classify the communication into 3 namely transmitter, receiver and communication center.

A. Rhino Robot
A robot is a mechanical device that can perform physical tasks, either using human control or control, or using pre-   International Conference on Engineering, Advance Science and Industrial Application (ICETESIA) 2018 September 6-7 2018, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia defined programs (artificial intelligence) [1]. Advances in robotic technology have made it possible to do things that are usually only done by humans. One of the advancements is the creation of a bomb squad robot. This robot can replace humans to spy on and handle explosives or environmental hazards directly [2]. This object was discovered in 1972 by Lieutenant Colonel Peter Miller by designing electricpowered cart chests to devices such as car bombs so that dangerous objects were safely detonated without injuring anyone [3].
Rhino robot itself consists of 2 main parts of the arm and chassis. In the arm section to take the dangerous object assisted by gripper. This section has 6 Degrees Of Freedom (DoF) can be illustrated as in Figure 1. While the chassis functions for robot mobility. Components in this section consist of several motors, batteries, robot motion support circuits and so on as in Figure 2.

B. OCU
Robots require constant attention and direct control by operators via remote operations called Operator Control Units (OCUs) [4]. Controlling robots through this type of OCU requires full attention by the operator. Operators typically use a joystick type controller to enable various motors on the robot to move it [5]. OCU devices can be illustrated as in Figure 3.
In this study designed an OCU consisting of 3 main parts of Power Distribution, Interface, and GUI. The Power Distribution section is responsible for creating a power supply for the OCU to power up. Then in the Interface section assigned to design the buttons to be integrated by the GUI.

C. GUI
The GUI is a pictorial interface for a program to make it easier to use by giving a consistent look like buttons, menus and so on [6]. In addition, it also makes it easy for humans and computers to interact and communicate. This function is usually event-driven which means that some tasks will run every time the event is selected. Such users give inputs on buttons or menu items [7].

D. Basic Programming C#
C# (read "See-Sharp") is a multi-purpose computer programming language that is suitable for all developmental needs and object-oriented programs or modern Object Oriented Progamming [8]. OOP is an approach for software development based on objects that interact with each other [9]. Microsoft created C # along with the creation of the .NET Framework. C # promises the productivity and ease of being in Visual Basic with the capabilities and flexibility that exist in C / C ++ [10].

E. WPF
WPF is a GUI framework that is used to create windows applications just like windows form. This application is a GUI that is used to create client-side applications for windows as well as web-based applications. In addition, it is capable of designing user interfaces with user control [11]. WPF is one of the features in Visual Studio.
WPF is a GUI framework that is used to create windows applications just like windows form. This application is a GUI that is used to create client-side applications for windows as well as web-based applications. In addition, it is capable of designing user interfaces with user control [11]. WPF is one of the features in Visual Studio.

F. Visual Studio
Is a software that can be used for the development of various applications that have a variety of types including desktop applications (Windows Form, CommandLine, Web Applications, Windows Mobile). This software has more than one compiler ie Visual Basic, C #, C ++, InterDev, J ++, F #, Souce Safe and so on [12].

A. Communication System and Data Storage
Communication and data storage system on the GUI is divided into 5 main parts of Receiver, Transmitter, Communication Center, Robot Hub and Transceiver. The receiver on this system serves as a place of messages sent by

B. GUI's Page
The look and layout of the menu on the GUI plays an important role in controlling and monitoring robots. Therefore, it is necessary to optimize the user interface graphically. Here is the GUI flowchart when run in Figure 5 and Figure 6.

A. Communication system and Data Storage Analysis
Communication and data storage systems are made in a modular fashion so that there are some differences with the previous system. Here is a comparison of the old GUI system with the new version in Table 1.

B. Testing Memory use
This test is performed to prove the functionality created without using XNA Framework with In Table 2 it explains the memory difference in older versions of GUI with new.

C. GUI Testing
Testing the performance of GUI memory speed is intended to find out how much RAM is used. Data is obtained from the Diagnostic Tool on one of the features in Visual Studio. In Table 3. The average GUI calculation is run on equation (1).

D. New Display for GUI New Version
This test is done so that the created design can be displayed when the GUI is run. In Table 4 is the design of the new GUI menu display and layout. Total number of pages owned is 8 pages with details of 3 main pages and 5 pages of supporters to control the robot and monitor the area. Rhino robot's communications and data storage system in the new version of GUI has been made modular in order to be developed or modified by the next developer. The memory usage generated by the new GUI is 57.4 MB or 38% lighter than the old-fashioned version of GUI memory of 92.8 MB. Process Memory used by the new version of GUI when running on average uses 513.5 MB. 8-page view and layout design with more compact functionality than previous versions of GUI.