Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tutorials:demo:fetch_and_place [2021/11/09 10:05] – [Technical Requirements] arthurtutorials:demo:fetch_and_place [2021/12/13 10:42] (current) – [Tutorial 0: Getting into Emacs] arthur
Line 3: Line 3:
 This tutorial is from the "Demo Tutorials" category, which assumes no prior knowledge of Linux, ROS, Emacs, Lisp or robotics. This tutorial is from the "Demo Tutorials" category, which assumes no prior knowledge of Linux, ROS, Emacs, Lisp or robotics.
  
-Here is link to a video that walks through the first part of the tutorial with voice explanations:+===== Important Links ===== 
 + 
 +  * The {{ :tutorials:demo:cram_fall_school_2021.pdf |presentation slides}} give brief overview and introduction for this lecture and contain the most important informations on Emacs, our IDE for Lisp. 
 +  * The [[https://seafile.zfn.uni-bremen.de/f/a28c1de4acab4609b4f3/?dl=1|virtual machine (VM) file]] to run with VirtualBox. 
 +  * An explanation of the setup and first tutorial is also available with voice explanations (around 1h) as [[https://seafile.zfn.uni-bremen.de/f/c057cd48e1244d7997b8/|download]] or [[https://www.youtube.com/watch?v=0uJN-jRb7J4&feature=youtu.be|stream]], for those with spare time on another day. 
  
-https://seafile.zfn.uni-bremen.de/f/c057cd48e1244d7997b8/ 
-(or https://www.youtube.com/watch?v=0uJN-jRb7J4&feature=youtu.be) 
 ===== Motivation ===== ===== Motivation =====
  
Line 91: Line 94:
 {{ :tutorials:demo:vm4proc.png?800 |}} {{ :tutorials:demo:vm4proc.png?800 |}}
  
-Everything is set up. The VM can now be started. The Ubuntu 16.04 system should start and automatically log into the only account, with the username and password 'cram'.+Everything is set up. The VM can now be started. The Ubuntu 18.04 system should start and automatically log into the only account, with the username and password 'cram'.
  
 +=== Last adjustments ===
  
 +There are two versions of CRAM available in the VM. By default, the setup is designed to connect and work with a project from the Unreal Engine, for intricate physics simulation. We don't need any of that for the upcoming tutorials, instead we change to the stable, standalone version of CRAM. In the VM, launch a terminal with Ctrl-Alt-T and open up the file ''.bashrc''.
 +
 +<code>
 +nano .bashrc
 +</code>
 +
 +Put a ''#'' symbol in front of the ''source'' command for day 1 & 2 of the FallSchool, and remove it from the line below, referring to day 3 of the FallSchool. Save and close the file and type ''source .bashrc'' to activate the changes in your current terminal. From now on the changes are applied on every newly opened terminal.
 +
 +By doing so, the terminal uses a different ROS workspace. Sourcing a ROS workspace enables the terminal session to access everything from that workspace, like loading a programming environment, or changing a namespace.
  
 ===== Understanding the Basics ===== ===== Understanding the Basics =====
Line 109: Line 122:
 Alternatively, you can use a keyboard shortcut for starting a terminal: "''Ctrl + Alt + T''" Alternatively, you can use a keyboard shortcut for starting a terminal: "''Ctrl + Alt + T''"
  
-==== Emacs ====+ 
 +==== ROS ==== 
 + 
 +ROS stands for Robot Operating System. 
 +It is software that makes a robot programmer's life easier. 
 +For example, it allows programs written in different programming languages to talk to each other. 
 + 
 + 
 +==== Lisp ==== 
 + 
 +We are going to program our robot in the Lisp programming language. 
 + 
 +This language has a convenient command line. 
 +If you are curious why Lisp, [[http://cram-system.org/doc/package/why_lisp|go here]]. 
 + 
 + 
 + 
 +===== Tutorial 0: Getting into Emacs =====
  
 Emacs is one of the oldest text editors and one of the two most popular text editors in the Linux world. Emacs is one of the oldest text editors and one of the two most popular text editors in the Linux world.
Line 132: Line 162:
  
 {{ :tutorials:demo:emacs_intro.pdf |These slides}} contain a few important shortcuts, and introduce you to the popular 'Orc Battle' Lisp example from 'The Land of Lisp'. {{ :tutorials:demo:emacs_intro.pdf |These slides}} contain a few important shortcuts, and introduce you to the popular 'Orc Battle' Lisp example from 'The Land of Lisp'.
-==== ROS ==== 
- 
-ROS stands for Robot Operating System. 
-It is software that makes a robot programmer's life easier. 
-For example, it allows programs written in different programming languages to talk to each other. 
- 
- 
-==== Lisp ==== 
- 
-We are going to program our robot in the Lisp programming language. 
- 
-This language has a convenient command line. 
-If you are curious why Lisp, [[http://cram-system.org/doc/package/why_lisp|go here]]. 
- 
- 
- 
  
 +Run and play the orc-battle.lisp program to get a feeling for Emacs.
  
 ===== Tutorial 1: Simple Fetch and Place ===== ===== Tutorial 1: Simple Fetch and Place =====