"Git is the way and the truth and the life. No developer comes to the Heaven except through git."
Self-driving is widely used in ABC from cars to small logistics boxes.
All the vehicles in ABC are linux machines.
All programs necessary are to be written in the Rust language, the default language of ABC.
Self-driving in limited environments is quite easy to implement. Examples are autonomous cars which drive through underground tunnels or logistics boxes which drive in warehouses or storages.
If all cars are shared by public, the battery capacity of each car can be reduced to less than a quarter compared to ordinary electric cars. It increase energy efficiency due to lighter weights, and reduces the production cost as well.
All cars are monitored, controlled and driven by ABC, the centralized automobile control system.
If anyone or anything can hack the ABC system, then all the traffic in the city will be shut down. So, it's more than important to secure the system. That's why all the traffic data are openhashed.
Self-driving logistics boxes and parking lots for vehicles are described in ABC Storages.
Every single object on the roads, the tunnels, and the in-building logistics pipelines etc. is controlled by ABC, including its speed, direction and pathway etc. See ABC Transport for detail.
This page is not for harmonizing the traffic of the numerous vehicles in the city, but for the designs of the vehicles to be used in the city.
Because of their different roles and characteristics, we need to design all the vehicles of the city from scratch.
It looks like subway of in the sky, but operates like taxies without drivers.
The rail is constructed in the sky not to disturb moves on the ground.
The skyrail might be a MagLev(Magnetic Levitation). A MagLev is rather expensive to construct, but consumes less energy than traditional wheel-based transportation.
MagLev is not so difficult to implement, and its mechanism is rather simple. We have already designed its prototype. See the MagLev transportation for detail.
MagLev Control System
Magnetic levitation is not so difficult to implement. See The Fastest train ever built | The complete physics of it.
Our mission here is to make a model of ABC MagLev both its hardware and software. Softwares or programs necessary are to be written in the Rust language. Let's do it.
Pseudo Codes
Cars of the city are similar to taxies without taxi drivers. However, there are notable differences between city cars and ordinary cars.
Very small compared to ordinary cars because it doesn't need a large battery or steel frames.
The main usage of cars is from departure point to a skyrail station or from station to destination. So, the maximum driving distance per passenger or group is less than 10 km. That's why the battery size of the city cars is 1/50 ~ 1/100 of ordinary electric cars.
Because all cars are FSD and their maximum speed is less than 50km/hr, they don't need any safety measure such as steel frame and airbag, not to mention of handle, brake, gear, instrument panel and so on. That's why the manufacturing cost of the city cars is 1/10 ~ 1/20 of ordinary cars.
In-wheel motors
In-wheel motors may reduce production cost significantly. See How does In-Wheel Motor Technology Work? | Four Motor Drive & Torque Vectoring.
Our mission is to design and make a prototype of an ABC car using four in-wheel motors, each of which is controlled by the main Linux machine of the car.
Let's do it.
Pseudo Codes
A forklift is one of the most efficient loading and unloading machines. How to design autonomous warehouses, forklifts and trucks all together? They are a set of logistics systems, all of which work together.
An unmanned autonomous warehouse takes in or out cargoes without human employees.
An autonomous forklift is to load and unload cargoes of trucks.
An autonomous truck drives to its destination under the control of the remote ABC logistics system.
Let's design and make a model of the composite unit of the three, just one machine which does all the three roles. For example, imagine a vegetable farm. A vegetable box in the farm moves to a cargo hold and communicate with it to be lifted into the hold. After all the vegetable boxes are loaded into the hold, a truck comes to the farm, and tows the hold to a food factory where the truck is unlinked from the hold. The vegetable boxes are to be unloaded one by one, and to be moved into the factory to be used. The empty boxes are cleaned and moved to the hold for another harvest at another farm. Our mission is to design those machines and facilities which operate without human employees.
A forklift, a warehouse and a truck are all linux machines with fixed IP addresses, communicating one another via http, even if physically separated.
A cargo hold is a warehouse itself.
Boxes to be loaded into a cargo hold also are linux machines with fixed IP addresses.
A forklift moves boxes into or from a cargo hold, or those boxes themselves can be semi self-driving vehicles, which can move up and down along the forklift device attached to the cargo hold.
A truck can be separated from the cargo hold which it tows.
Some cargo holds can control temperatures inside it.
Let't code it.
Pseudo Codes
In hospitals, some patients walk and the other use wheelchairs. Let's design a wheeled chair which self drives by the orders from ABC Health. For example, every client who arrived at a hospital is given a wheelchair. The wheelchair is controlled by the hospital, conveying the patient here and there. After finishing, the patient leaves the chair and rides a car.
Let's design and make that kind of wheelchair and code softwares.
Pseudo Codes
E-scooters are energy efficient, but quite dangerous in current traffic environments. We need to redesign roads also. In addition, we need new traffic rules for various electric vehicles to share the same roads and how to charge and store them.
Pseudo Codes
When a user selects destination, the server automatically calculate (1) the optimal path, (2) which car(s) to drive, (3) where to change cars.
After a user inputs her or their destination and other data, the server divides the total route into one or more than one short sections, allocates each car for each section, and sends the plan to the user.
A user provides not only the number of passengers, but who they are also. The server calculates the optimal path and vehicles based on the data. For example, if any passenger is disabled or pregnant(Need care?), the server selects more proper vehicles and path for them.
Though the calculation by the server can be achieved by traditional programming, A.I. is more convenient and easy to code for this kind of process.
Pseudo Codes