After almost 2 months of hard work… the results of the five legged (pentapod) robotic platform are acceptable. For the development of this all-terrain robotic platform, i am using two ARM Cortex M4 microcontrollers using a Real-time Operating System (RTOS) as well as a simple sensory system. The communication between the microcontrollers was established using the Controller Area Network...
Custom PCB using 3020 CNC
In this post i will present you my first double sided custom pcb made using a simple but “effective” CNC 3020. I’m a CNC newb so my milling process, and the following outline uses what I’ve concluded to be the most common tools. These tools are Eagle CAD, PCB-gcode, Mach 3 CNC, 0.1mm 30deg V-Shaped Engraving Bit, and of course random surplus carbide PCB drill bits from...
C# Registry Keys Manager
Usually an application needs to save or retrieve data from windows registry. For this reason a registry manager class is required. The following code snippet provides a simple yet effective way for handling windows registry keys. public class Manager { public void addRegistry(string subkey, string name, string value) { if (Microsoft.Win32.Registry.GetValue(@""+subkey, name, null) == null) {...
Capturing screenshots using C#
What is the right way to take screenshots using C#? It’s certainly possible to grab a screenshot using the .NET Framework. The following code snippet provides a C# class for capturing and saving screenshots. public class Screenshot { public DateTime timestamp; public Bitmap bitmap; public Screenshot(DateTime timestamp, Bitmap bitmap) { this.timestamp = timestamp; this.bitmap = bitmap; } }...
Calling a method from a string in C# (dynamic method invocation)
We are often used to call methods dynamically. You can invoke methods of a class instance using reflection, doing a dynamic method invocation. The following code snipped presents an easy way of invocation in C#. public void Execute(string methodName, object[] args) { if (GetType().GetMethod(methodName)) != null) { MethodInfo method = GetType().GetMethod(methodName); method.Invoke(this, new...
Better way to convert any number to C string
In the previous version of number to C string converter, we could only convert integer numbers. Even if it was faster, sometimes it is crucial to use floating point numbers in our projects. This version of num_to_string function provides conversion of both positive and negative numbers as well as floating point numbers. const char * num_to_string( double value ) { char * result; double...
Literature Review in Speech Emotion Recognition
Introduction Speech is one of the fastest and most natural ways of communication between humans. The speech signal contains not only the message but also necessary information like the emotions of the speaker [1]. Therefore, Speech emotion recognition (SER) is a research field that based on speech recognition but deals with the recognizing the emotional state of the speaker. Speech emotion...
Literature Review of Deep Machine Learning for feature extraction
Abstract Feature extraction is a crucial part of many tasks. In recent years, deep learning approaches have achieved significant importance as a way of constructing hierarchical representations from unlabeled data. Understanding how to recognize complex, high-dimensional data is one of the greatest requests of our time. Deep Machine Learning have showed us that there is an efficient and accurate...
Is Computer Science a Science?
Abstract In our times, there has been a tremendous evolution of technology that among others has extended human capabilities. This infiltration of technology in everyday life can be, at least at a high extent, attributed to computers and the development of computer science. In this paper, we examine the definition of science and the scientific method, and we try to justify the validity of the...
Using Sockets with C++
Linux sockets are always a useful tool for an application. In the simplest terms, a socket is a pseudo-file that represents a network connection. Once a socket has been created (using the proper primitives, and the proper parameters to identify the other host), writes to the socket are turned into network packets that get sent out, and data received from the network can be read from the socket...