Browse the Computer Science/Math Collections
Translation of a Text Based UML Class Diagram Representation into a Graphical Rendering Language03/21/2017The goal of the research is to discover and create a means to convert a text representation of UML class diagrams into its corresponding visual form. UML class diagrams describe the design of a software system and are widely used throughout industry and academics. The text representation of UML used here is called yUML. The approach translates yUML to a graph representation language, called dot, which is then rendered via the graphical rendering engine Graphviz. Each component of yUML must be parsed and translated into the corresponding graph component in dot. A parser generator, ANTLR, is used to develop the necessary software to parse yUML and convert it into dot. An ANTLR grammar for yUML is created for this process. The research is realized as a software tool that takes yUML as input and generates the dot representation. Then, Graphviz is used to graphically render the diagram. The yUML is automatically generated from an existing software system that leverages the srcML infrastructure. srcML is an infrastructure to support the analysis and exploration of source code. The results of this research allow the ability to recover a visual UML class diagram for any given software system. A current prototype has been developed and it is being evaluated for accuracy and scalability. Future work consists of adding different layout algorithms and evaluating their comprehensibility. The resulting tool will be an effective and useful means to assist programmers in understanding large software systems. |
Simulation and Control of a Tie Fighter03/21/2017Simulation and control of rigid bodies are important aspects of modern aerospace science. Recent decades have seen considerable development of algorithms known as Lie group variational integrators which can be used for simulation of a controlled rigid body. These methods draw both on classical and numerical aspects of mathematics. In this project we develop C++ code for a Lie group variational integrator with the goal of simulating a Tie Fighter, a fictional spacecraft from Star Wars. An interesting challenge in this problem is the coordination of the physics, computer science, and mathematical aspects of the simulation. Particular challenges in this problem include interpreting and implementing pseudocode from mathematics publications; mathematically describing the shape and mass distribution of a Tie Fighter and calculating associated physical quantities such as the inertia tensor; understanding aspects of pure mathematics which appear in the problem such as matrix Lie groups and Lie algebras; designing and testing thrust sequences for the Tie-Fighter; and creating useful visualizations of output from the C++ program. Results will be presented in poster format. |
Hybrid unmanned aircraft system03/21/2017Hybrid Unmanned Aircraft System with Long Flight Autonomy and Capable of Lifting 20 lbs of Payload Students: Seth Mathew Miller, Cody Thomas Langenfeld, Jim Keyser, Derek Ellinger and Robert Menarcheck Advisor: Dr. Vladimir Gurau Engineering Technology Department Kent State University at Tuscarawas, 330 University Dr. N.E., New Philadelphia, OH 44663 Introduction Unmanned Aircraft Systems (UASs) are systems comprising of an unmanned aircraft vehicle (UAV), its payloads, the control station, its support subsystem and its communication subsystem [1]. UASs can be used for cargo / package delivery or as sensor platforms for data acquisition [2] such as aerial mapping, aerial surveying, precision agriculture (crop health or crop damage assessment), natural resource management (wildlife census, impact of human activities on wildlife), inspection of industrial and civil infrastructure, aerial filming and photography, news reporting or intelligence, surveillance, reconnaissance and emergency response. Objectives The current project represents Phase 3 of a four-phase endeavor at Kent State University at Tuscarawas. Its general objectives are to design, build and test an UAS consisting of an octocopter as UAV (Figure 1) for data acquisition and capable of operating under manual control, stabilized control and automated control (autopilot). The system has video acquisition and recording subsystem consisting of an SJ 4000 action camera mounted on a 3–axes gimbal for image stabilization (Figure 2) and first person view (FPV) subsystem consisting of an HD camera, 5.8 GHz video transmitter and receiver modules and on-screen display (OSD) for transmitting telemetry data (Figure 3). Figure 1 The Unmanned Aircraft Vehicle (Octocopter) Built at KSU Tuscarawas To secure an increased flight autonomy, the power electrical system is hybrid and will consist of six lithium-polymer batteries recharged by a 0.5 kW High-Temperature Proton Exchange Membrane Fuel Cell (HT-PEMFC) stack designed and built at KSU Tuscarawas (Figure 4). |
Design, Fabrication and Demonstration of a Computer Numerically Controlled Rapid Prototyping Machine for Additive Manufacturing, CNC Machining and Laser Cutting03/21/2017Since CNC machine tools for additive manufacturing, subtractive manufacturing and laser cutting operations have similar design features, it would be of interest to design and build a universal manufacturing / prototyping machine capable of performing all three types of operations. The objective of the current project is to design, build and operate a CNC rapid prototyping machine that can be used alternatively for CNC milling operations, 3D printing and laser cutting. The universal machine will consist of a stage that supports the workpiece and capable of moving along the Y axis of a Cartesian coordinate system, and two piggybacked X and Z axes supporting the tool. The axes will move along two linear slides [2], each containing two ball bearing blocks [3]. The motion is controlled by NEMA 17 unipolar stepper motors with a step angle of 1.8o per pulse [4], connected to leadscrews [5] through flexible couplers [6]. A common tool holder plate designed to hold a spindle [7] for CNC milling operations, a filament extruder [8] for 3D printing or a laser [9] for laser cutting operations will be attached to the X axis. A Smoothieboard controller [10] will be used to interface the computer to the stepper motors and convert the coded alphanumeric data into train of pulses sent to the stepper motors. The advantage of the proposed technology consists in its low cost and in its capability to perform a variety of CNC manufacturing operations using a single machine tool. |
Comparative Graph Model03/21/2017Comparative Graph Model is a facial recognition algorithm that takes several images of the same face, and identifies common features of that face. The algorithm looks at the closeness of features along with how many times each exists, to decide which features are the best representation of a face. The algorithm takes features from several images and condenses them down to one image, which is then used for comparison to other images. This algorithm uses a different approach than many facial recognition algorithms, which use a template to seek out facial features and make associations. CGM uses only data that is present to form associations. This makes the algorithm unsupervised, and can easily be used for other domains like object recognition. In this experiment, CGM is used in conjunction with a perceptron neural network to compare positive and negative images. Ten training images were condensed to one image via CGM, and compared against one positive image (the same person), and one negative image (a different person). In the experiment, each trial was run for 100 iterations. The algorithm recognized the same person 71% correctly, did not recognize a different person 79% correctly, with an overall correctness of 61%. Using an unsupervised algorithm is beneficial across many disciplines, especially where a pattern can be too hard to find or represent. The algorithm does not need to know what it is looking for to make associations, which makes it a good candidate for finding complex patterns and associations in data. |
Autonomous Robotic Lawn Mower Guided by Global Navigation Satellite System03/21/2017The objective of the proposed research is to investigate, design and demonstrate a robotic lawn mower that uses GNSS and electronic compass as sensors for autopilot. The autopilot will allow the mower to navigate along a predetermined trajectory between waypoints, replacing thus the uneconomical random motion of the prior-art robotic mowers. The autopilot / controller will be based on ArduPilot platform. The software upload, the configuration of the controller, the calibration of the sensors and the definition of the autopilot trajectory will be achieved using the freeware graphical user interface (GUI) Mission Planner. The trajectory of the mower will be defined in Mission Planner using waypoints on a satellite map of the lawn. The novelty of the proposed technology is the open-source approach, which achieves low cost and accessibility. It is also possible, that this may be the first demonstration of a robotic lawn mower that uses GNSS autopilot with predetermined programed trajectory. The benefit for this technology is represented by its economical procedure of achieving its tasks. |
Autonomous Localization Utilizing Strobing Light Sources03/21/2017In the NASA Robotic Mining Competition, the goal is to design a robotic system that is capable of completing challenging simulations of tasks an autonomous Martian system would encounter. One of the largest obstacles when designing any autonomous robotic systems is localization and orientation. While many systems for localization have been designed and implemented such as GPS and ultrasonic ranging, the conditions of the Martian surface exclude many such systems and demand a minimalistic system. By utilizing strobing sheets of light and precise timing, it is possible to calculate the position of the robot as a function of time intervals in order to achieve high definition localization and accurate positioning, while being viable for use on the Martian surface. |
A Study of the Reduction of Excessive Energy Generated by Strong Winds on Power Lines via a Velocity Damping Controller at the Transmission Tower03/21/2017In this research, we are pursuing the robustness of a self-excited vibrational system with negative damping. In practice, this is manifested as conductor galloping of overhead power lines, which is an oscillation of the lines caused by strong winds. Improved transmission tower designs are needed which are capable of combating excessive stresses exerted on the tower by the galloping power lines. Our model of this self-excited system shows that the oscillations can be controlled by adding a boundary velocity feedback controller at the transmission tower. Using a decomposition method, we show there is a closed form analytical solution which predicts the system can be stabilized under certain conditions. Through this research, power transmission systems that are more reliable and resistant to galloping can be engineered. |
A Scalable Approach for Lightweight Pointer Analysis03/21/2017A lightweight, flow-insensitive pointer analysis tool called srcPtr is presented. The research investigates various methods for pointer analysis to determine which are scalable to large scale software systems. Pointers are variable that indirectly reference other variables within a source code program. Pointer analysis is a non-trivial activity for determining what variables are being pointed by which pointer and how these indirect references can alter program behavior. Pointer analysis is critical for compiler optimization, impact analysis, fact extraction, debugging, and program comprehension. A prototype tool is being constructed as a test bed for determining what analysis approaches are scalable while simultaneously providing a good approximation (full pointer analysis is NP-hard). The implementation, called srcPtr, is built on top of the srcML. srcML is an infrastructure that supports the analysis and exploration of source code and was developed here at Kent State. The research involves the implementation of various published algorithmic aspects of pointer analysis and determine, via experimentation, which can be accomplished within the parameters of scalability. The approach will be evaluated against Codesurfer a commercial program analysis tool. It is expected that srcPtr will be less accurate than Codesurfer but have drastically faster performance. Once completed, srcPointer, will be one of the only stand alone open-source pointer-analysis tool available. It will facilitate additional research that requires efficient pointer analysis currently not available. Additionally, industry professionals can use srcPtr to both obtain valuable data about their code and decide whether a more accurate, heavy-weight solution is appropriate and cost effective. |