Italian (IT)

The bodywork of the rover has a dual function.
It serves to arrange and support some sensors and gives a shape to the rover.

Usually the design of the bodywork of robots isn't interesting.
In this case we wanted to give a touch of originality to this component.
For material, we have avoided using plastic or fiberglass, because they are expensive to procure and work with.
We choose paper and cardboard, assembled with papier-mâché techniques.

We have designed shape and dimensions of the bodywork in 3D, so we were able to check the dimensions of the components contained.

We have decided how to divide the various parts of the bodywork.

 

We have printed and cut the masks of all the necessary pieces.

Using the masks, we have cut the shapes on thick cardboard.

We started to bend and unite the parts

We have joined the parts together to get the bodywork completely assembled.

We took some sheets of paper and made a glue by mixing flour, water and vinegar.

We've covered all the bodywork with pieces of glued paper.

Quoting Isaac Newton "if I have seen further than others, it is by standing upon the shoulders of giants".
A complex project is always based on some work done by others previously. Every artificial intelligence project is based on many theories and projects discovered in past years.
This is also true of CassandraAI project.

This project tries to be completely described.
CassandraAI is a software, so its features is based on underlying software levels and on a hardware level.
Luckly, in internet we can find many open source projects that describe these levels well.

First and deepest level is hardware.
Leaving aside experimental quantum computing and biochips, current information science is based on silicon technology. Logic circuits, which work with binary mathematics, printed on a silicon chips.
The central processing unit is the core of current information technology.
There are various types of cpu, from simple microcontrollers to multicore CPUs. The complexity of modern CPUs is enormous.
However, the basic principles have always been the same.

 

Visual 6502 project (http://www.visual6502.org), which can be found on internet, is very interesting. It's based on the 6502 processor circuits.
The MOS 6502 is an 8-bit microprocessor presented by MOS Technology in September 1975. MOS 6502 was put on sale for $ 25 and was the cheapest CPU available on the market. It has been used in many famous products, marketed in the late seventies and early eighties, such as the Apple II and the Commodore VIC-20. It is a historical CPU.
In this project, polygonal vector models of each of the physical components of the chip are created, about 20,000 in total for the 6502. These components form circuits in some simple ways based on how they contact each other, so by intersecting our polygons they were able to create a complete digital model and a simulation at the transistor level.
This model is very precise and can perform the classic 6502 program.
The project allows you to write and test a real code, written in Assembly language, so you can see how a CPU works.
Obviously, modern CPUs contain many additional circuits, but the basic principles are the same.

 

A modern computer is composed of the CPU and many other support circuits. The computing power available today has made possible to create a software that can emulate these circuits.
Virtualization technologies have made possible to abstract every physical aspect of a computer into software procedures.
QEmu project (https://www.qemu.org) is a generic and open source machine emulator and virtualizer.
It allows you to replicate the complete set of computer components, virtualized within software.
The project is very extensive, but with a little patience it is possible to read the source code and see how the individual parts work in detail.

 

Hardware programming is a complicated activity, so computers are sold with a builtin software to use machine in a simple way. This software is called operating system.
The most common operating system for home users is Microsoft Windows, but Mac OS X and Linux are also very popular.
There are hundreds of operating systems on internet, many of which are based on the Linux kernel.
There is also an open source project for an operating system based on Windows NT architecture. It's called ReactOS (https://www.reactos.org).
In ReactOS source code you can find all the architectures of a modern operating system.
It's over nine million lines of source code, it's challenging to study it, but you can do it if you want.

 

 

CassandraAI, like other applications, is based on these underlying levels that we have explained.
To write a software application there are many ways which use various types of programming languages.
Operating systems are tipically written in Assembly and in most of code in C, a high level language simpler than Assembly, but which can be compiled as a machine language.
CassandraAI project doesn't want to be tied to the hardware on which it's executed, so an independent language was chosen to write it.
Java could have been a great choice, but C# is chosen for the developer's background.
C# is a programming language created by Microsoft. With the proprietary version, Net Framework, there is an open source implementation, called Mono (https://www.mono-project.com).
Mono is able to execute the code written for CassandraAI.
If you want, you can read the source code of the compiler and runtime, to understand how it works.
Recently, starting from Net Framework and Mono, we move to the new NetCore open source implementation.
CassandraAI project software is written mainly in C# language.
The rover's firmware are written in C.

 

Writing software is a complex activity.
It's virtually possible to write all code by hand with a text editor, but really it's impossible if you don't have an integrated development environment to help programmers write code.
CassandraAI is a complex software, it needs an IDE to be developed.
The project was initially developed with an open source IDE suitable for C#: SharpDevelop (http://www.icsharpcode.net/opensource/sd/Default.aspx)

 

Recently the project has moved to the Community version of Microsoft's main IDE, Visual Studio (https://visualstudio.microsoft.com).

 

Furthermore, the Arduino IDE (https://www.arduino.cc/en/main/software) was used to write rover's firmware.

The suite is entirely written in csharp and can be run on Net Framework and Mono. No third-party binary libraries were used, to maintain full control over the source code.

Code
Virtual world

Multi-user virtual 3d environment to interact with the system avatar.

Rover robot for interaction with real world. Speech recognition and image recognition. Human interaction by natural language.

Robot
Chat

Live chat integrations with platforms like Telegram. Integration with online database and cloud resource.

Rainmeter (https://www.rainmeter.net) is a free, open-source application for Windows PCs. It is a platform that enables skins to run on the desktop.
A skin can be a single-purpose tools like Windows desktop gadgets or widgets, or more complex like miniature applications.

I developed Noos 1.0, my skin for Rainmeter also published on Deviantart.

Deviantart Rainmeter Noos 1.0

Virtual world is a computer-based simulated environment which may be populated by many users who can create a personal avatar and explore the virtual world and communicate with others. These avatars can be textual or three-dimensional graphical representations.

OpenSimulator is an open source multi-platform, multi-user 3D application server. It can be used to create a virtual world.
It allows virtual world developers to customize their worlds using the technologies they feel work best.
OpenSimulator is written in C#, running both on Windows over the .NET Framework and on Unix-like machines over the Mono framework.
Out of the box, OpenSimulator can be used to simulate virtual environments similar to Second Life™.

Anyone can connect to an opensim grid.
Just download a viewer, like Singularity, register on a grid like Craft and in the map enter the URL of the sim to visit.

Craft is a well known Italian opensim grid.
In Craft I assembled Isengard, a fantasy style sim that I invite you to visit.

To visit my sim, this is the URL to paste in inworld map:
craft-world.org:8002:Isengard

 

 

 

 

 

This website uses cookies to ensure you get the best experience on our website.