text:
\section{Introduction}

When operating in human environments, robotic manipulators will encounter scenarios where obstacle avoidance is impractical. For instance, consider the task of retrieving an item from the back of a kitchen cabinet. It is likely that a collision-free path either does not exist or is intractable to visually identify due to occlusions. However, many of the obstacles in the scene will be movable and can therefore be pushed aside to create a path to the target. In situations such as these, humans are comfortable reaching towards the target and allowing, but not explicitly planning for, incidental contacts which rearrange the scene as necessary for task completion. They are able to sense and adapt to these contacts in order to maintain safety.

\begin{figure}[thpb]
  \centering
  \vspace{10pt}
  \includegraphics[width=0.9\linewidth]{figures/reaching_through_obstacles_backgroundBlurred_cropped.png}\vspace{-0.1in}
  \caption{When reaching through clutter, especially if the identity and mobility of objects are unknown, tactile sensors on surfaces such as the back of the hand can be used to prevent unsafe contact events, such as toppling an object.  \vspace{-0.15in}}
  \label{fig:motivation}
  \vspace{-5pt}
\end{figure}

This work is aimed towards enabling a robotic manipulator to use incidental contacts during reaching for safe, passive object rearrangement.  We do not focus on identifying the objects in contact and our goal is not to plan motions that push objects into a desired pose. Rather, we allow unplanned contacts to occur and aim to sense them and evaluate their safety. To minimize the need to reason about specific object properties, we propose that the safety of a contact can be inferred from the object motion it induces. The robot should be able to distinguish between contacts that stably reposition objects without knocking them out of their stable poses
(e.g. sliding an object across the surface of a shelf) and those that may be destructive (e.g. toppling an object or continuing to push against an object that is fixed in the world). As cluttered scenes present a challenge for vision systems due to occlusions and light contact events may produce little visual change, we rely on distributed tactile sensing. Whereas most tactile sensors developed for robotics applications focus on the fingertips and nominal grasping surfaces of manipulators, incidental contacts may occur anywhere on the hand and indeed may occur most often on the back of the hand when reaching toward a target. Therefore, we present a tactile skin design that covers not only the inner grasping surfaces, but also the back and sides of the 16 degree of freedom Allegro Hand. We then explore techniques for locally classifying object motion at the contacts.

The contributions of this paper are:
\begin{itemize}
    \item an approach for reaching in clutter that uses tactile data to identify broad classes of object behavior and tactile cues that do not require identifying objects or object classes to predict behavior;
    \item a high-coverage, flexible sensor network for the Allegro Hand and its use to collect data during incidental contacts;
    \item demonstration of tactile cues for distinguishing immovable and movable objects, and further differentiating sliding (safe) and tipping (unsafe) motion.
\end{itemize}

\begin{figure*}[bht]
\vspace{5pt}
\centering
  \includegraphics[width=0.95
 \textwidth]{figures/sensor-design-combined-newCharacterization.png}\vspace{-0.1in}
  \caption{(\textbf{A}) The layers that comprise a networked sensor, shown for the back of the hand. (\textbf{B}) Sensorized Allegro Hand with electrodes exposed for clarity. (\textbf{C}) Signal change as force is applied to the back of hand sensor. Solid and dashed lines show the mean signal of 10 taxels during loading and unloading, respectively, and shaded regions show the standard deviation. \vspace{-0.1in}
}
\label{fig:sensor-design}
\vspace{-5pt}
\end{figure*}

\subsection{Related Work}
\subsubsection*{Tactile Sensors and Sensory Skins}
There has been extensive work on developing tactile sensors for robotic end-effectors, mainly aimed at providing information for grasping and manipulation. Yamaguchi et al.~\cite{yamaguchi2019recent} provide a review of recent developments in tactile sensing technology for robotic manipulation. For the most part, these sensors cover nominal grasping surfaces, most commonly the fingertips \cite{wettels2014multimodal, maslyczyk2017highly, khamis2018papillarray,donlon2018gelslim, padmanabha2020omnitact, gomes2020geltip, lambeta2020digit}, but occasionally also the proximal inner surfaces and palm (e.g.~\cite{heyneman2016slip, funabashi2022multi}).
A few sensors have been developed specifically for, or integrated with, the commercial Allegro Hand, a 16 degree of freedom (DOF) robotic gripper \cite{funabashi2022multi, romero2020soft, sommer2016multi}, but these do not cover the backside of the hand. Some tactile skins that can potentially cover large areas of robotic arms (e.g.~\cite{gruebele2021stretchable, cirillo2015conformable, goncalves2021punyo})
have also been developed but are not specialized for a multi-fingered hand such as the Allegro Hand.

While optical tactile sensors offer remarkable resolution and sensitivity for manipulation~\cite{donlon2018gelslim, padmanabha2020omnitact, gomes2020geltip, lambeta2020digit}, capacitive sensors are easier to distribute across the different surfaces of a robotic hand and offer adequate resolution. The sensor presented here is adapted from a design by Ruth et al.~\cite{ruth2021flexible}, and is placed on the front, back, and sides of an Allegro Hand (Fig.~\ref{fig:sensor-design}).

\subsubsection*{Reaching Through Obstacles}
Previous studies have addressed challenges of manipulation in clutter by introducing a rearrangement subtask, where objects are repositioned using prehensile manipulations \cite{srivastava2014combined, murali20206}, non-prehensile pushes \cite{dogar2011framework, yuan2018rearrangement, hasan2020human, huang2020mechanical}, or a combination of both \cite{lee2021tree}. Zhong et al. ~\cite{zhong2022soft} track contacts along multiple objects during rummaging with soft tactile sensors. Moll et al.~\cite{moll2017randomized} propose to avoid reasoning about specific interactions and note that, in many cases, controlling the final pose of every object in the scene is unnecessary. They present an open-loop method which allows pushing movable objects while avoiding collisions with fixed obstacles, assuming that the mobility of each object is known \emph{a priori}. In this work, we use tactile sensing to detect object mobility, which is initially unknown and may change over time. Jain et al.~\cite{jain2013reaching} developed an MPC controller which enables a robotic manipulator with whole-arm tactile sensing to reach through obstacles while keeping contact forces below a threshold. We propose that using object motion as an indication of safety, rather than force, will allow sliding aside objects using forces which could topple objects in other scenarios.

\subsubsection*{Object Mobility Classification}
The benefit of tactile sensing in detecting object motion within a grasp, most notably the onset of slip, has been well discussed in literature \cite{yamaguchi2019recent}. Recent work from Ma et al.~\cite{ma2021extrinsic} uses vision-based distributed tactile sensing to estimate constraints to motion of a grasped object in contact with the environment. Using a novel sensor which provides both visual and touch information, Razaei et al.~\cite{rezaei2021learning} predict the final resting pose of an object that contacts the sensor after being released from an unstable configuration. There has been comparatively little work using tactile data from incidental contact on a robotic manipulator to classify object motion. Bhattacharjee et al.~\cite{bhattacharjee2014inferring, bhattacharjee2012haptic} use whole-arm tactile sensing to classify objects as Rigid-Fixed, Rigid-Movable, Soft-Fixed, and Soft-Movable through various data-driven approaches. Here, we expand on this work to differentiate between safe object motion (i.e. sliding) and potentially dangerous object motion (i.e. tipping) and propose a classification method which relies on designed tactile cues rather than a data-driven approach.

\section{Distributed Tactile Sensor Design}
\label{sensor-design}
\subfile{sections/sensorDesignRearrangement}

\section{Technical Approach}
\subsection{Environment Assumptions}
\label{assumptions}
We consider a robot performing a planar reaching task in the presence of obstacles. Robot trajectories lie in a horizontal plane and consist of piecewise linear motions. Operating speeds are low enough that a quasi-static assumption applies (i.e. there is no dynamic evolution of the scene that is not associated with robot motion). We assume contacts occur on a sensorized surface of the hand. Objects may vary in geometry, but we assume they are convex, rigid, and feature a stable support surface which is initially in contact with the surface of the world. We note that non-convex objects can often be treated as locally convex if considering only their sliding or tipping motion. The mobility of objects is initially unknown.
They may be free to slide, constrained such that they are likely to tip, or immovable in certain directions. We consider any object which takes more than 20\,N to move to be immovable.

\subsection{Terminology}
We use the following terms to formulate expectations about how tactile signals evolve in response to various object behaviors: \textbf{Tactile Feature:} a quantity extracted from tactile data at an instant. Examples include shape, size, location, and intensity of contact patches. \textbf{Tactile Cue:} a measure of how tactile features evolve over time -- for instance, an increase in contact patch size. \textbf{Tactile Event:} the tactile response corresponding to an object behavior (tipping, sliding, or fixed contact events). A tactile event may correspond to one or more tactile cues.

\subsection{Object Motion Categories}
\label{motion-categories}
In general, object motion from incidental contact is complex and depends on the object's geometric and mass properties. For determining the safety of a contact interaction, it may suffice to broadly understand the object's motion category rather than estimating its trajectory. We consider the following categories:
\begin{itemize}
    \item \textbf{Immovable} in the direction of applied force either because it is fixed in the environment, constrained, or considered too heavy to push.
    \item \textbf{Sliding} across the working surface while remaining in its stable pose.
    \item \textbf{Tipping} out of its stable pose. Excessive tip may lead to toppling, potentially causing damage or spills.
\end{itemize}
We hypothesize that these broad motion categories can be inferred from tactile cues that are not highly object-dependent. Therefore, using tactile signals to categorize object behavior could allow robots to reason about the safety of their actions without needing to identify the object itself. There also exist objects without stable poses (e.g. spheres), which we do not explicitly consider here. In addition to sliding, these objects may also roll, which would produce similar tactile signals to sliding and is also considered locally safe.

Prior to choosing potential cues which indicate motion category, we note that radial symmetry of an object impacts the tactile signals we expect. In their stable poses, objects that are radially symmetric about the vector normal to the floor have two detectable degrees of freedom: motion in the directions normal and tangential to the sensor surface. Radially asymmetric objects have three detectable degrees of freedom in their stable poses, as rotation in the plane will affect the sensor signal, as illustrated in Fig.~\ref{fig:cp-ecpectations}.

\begin{figure}[t!]
\vspace{5pt}
  \centering
  \includegraphics[width=1\linewidth]{figures/contactPatch_expectations_diagonal_darkerWireframes.png}
  \caption{We can distinguish two planar DoFs for radially symmetric objects (e.g. cylinders) and three for radially asymmetric objects (e.g. boxes).  Out of plane motion (tip) provides another distinguishable DoF.}
  \label{fig:cp-ecpectations}
  \vspace{-10pt}
\end{figure}

\subsection{Tactile Feature Extraction}
\label{feature-extraction}

Our candidate tactile features are: (1) [x,y] location of the contact patch center of pressure, (2) contact patch area, and (3) intensity of the activated taxels within the contact patch. They are identified using the following processing steps. First, we represent the normalized data at each timestep as a greyscale image. Signal intensity is extracted at this step. We then use bicubic interpolation to obtain sub-taxel resolution. Next, thresholding is used to isolate the contact patch. The same threshold value was used across experiments. Image moments are used to calculate the center of pressure of the contact patch, $(C_x, C_y)$, using $C_x = \frac{M_{10}}{M_{00}}$ and $C_y = \frac{M_{01}}{M_{00}}$ where $M_{ij}$ is the $(i, j)^{th}$ image moment. Finally, a contour which surrounds the patch is found. To accommodate cases where contact with a single object results in multiple disjoint patches (due to sensor noise or light, uneven contact), we take the convex hull of all contours to combine them into a single patch before calculating area as illustrated in Fig.~\ref{fig:feature-extraction}A.

\subsection{Tactile Cue Extraction}
\label{tactile-cue-extraction}
Candidate tactile cues such as an increase in signal intensity or a contact patch motion may be straightforward to identify conceptually, but reliably deriving them from raw tactile data is more involved. While theoretically, one could consider a tactile cue to be a discrete change in a tactile feature between two points in time, we observe that it is more reliable to identify trends over sequences of tactile data. Indeed, due to real world factors such as sensor noise, uneven contact surfaces, and variations in friction between the objects and the table, discrete changes in the contact patch often instantaneously resemble tactile events that are not actually present. We perform a piecewise linear least squares fit on the evolution of extracted tactile features either over time or over the progression of a robot motion \cite{pwlf}. Two line segments are used to capture a change in object motion partway through the interaction (e.g. objects may initially slide then begin to tip). For each tactile feature, we consider the slopes and means over each line segment to be candidate tactile cues. Before performing the linear regression, the features are passed through the RANSAC algorithm to remove outliers caused by noise.

\begin{figure}[b!]
  \centering
  \includegraphics[width=1\linewidth]{figures/tactile-images-combined.png}
  \caption{(\textbf{A}) Snapshot tactile images taken from contact with a fixed cylinder and sliding box are shown at two stages of post-processing. Features extracted from the processed images are labeled. (\textbf{B}) Sequences of tactile images in which tactile events can be identified. }
  \label{fig:feature-extraction}
\end{figure}

\section{Experiments}
We now describe the process for collecting incidental contact data and discuss the selection process for tactile cues. We then present classification results for contacts with immovable, tipping, and sliding objects.

\subsection{Incidental Contact Data Collection}
\subsubsection{Experimental Setup}
Incidental contact data were collected using the sensor presented in Sec. \ref{sensor-design} on the back of the Allegro Hand, which was mounted on a UR16e robotic arm and stationed above a flat table. The hand was placed in a configuration suitable for reaching, with the fingers extended and the palm orthogonal to the table surface, as in Fig.~\ref{fig:motivation}. Future work will apply the approach demonstrated here on the back of the hand to the entire hand sensor network.

\begin{figure}[t!]
  \centering
  \vspace{10pt}
  \includegraphics[width=0.8\linewidth]{figures/new_object_sets.png}
  \caption{Two sets of objects used for experiments. Object dimensions and weights are listed in Table \ref{tab:objects}.}
  \label{fig:objects}
\end{figure}

\begin{table}[hbt]
    \centering
\begin{tabular}{ |l|c|c|c| }
\hline
Object & Dimensions [mm] & Weight [g] \\
\hline
(1) Glass Vase & 90 x 190 & 390  \\
(2) Cardboard Cylinder & 61 x 270 & 170   \\
(3) Salt Shaker & 68 x 208 & 910 \\
(4) Wooden Box & 100 x 165 x 230 & 420 \\
(5) Cardboard Box & 43 x 133 x 180 & 260 \\
(6) Pancake Mix & 60 x 155 x 208 & 960 \\
(7) Mayonnaise & 70 x 90 x 180 & 610 \\
(8) Coconut Water & 74 x 80 x 230 & 1060  \\
(9) Lemonade & 80 x 110 x 270 & 2000 \\
(10) Sunflower Oil & 76 x 76 x 240 & 950  \\
(11) Balsamic Vinaigrette & 45 x 103 x 204 & 300 \\
(12) Syrup & 70 x 106 x 255 & 900 \\
(13) Coffee Grounds & 90 x 140 x 180 & 620 \\
\hline
\end{tabular}
    \caption{Object Properties}
    \label{tab:objects}
    \vspace{-15pt}
\end{table}

\subsubsection{Object Sets}
We collected data for contact with two sets of objects, shown in Fig.~\ref{fig:objects}. The first set contains prototypical objects which are approximately rigid and geometrically simple (2 boxes and 3 cylinders). We expect motion categories for these objects to be separable using the tactile cues discussed in Sec.~\ref{tactile-cue-extraction}. The second set consists of eight additional commonplace kitchen objects. These objects display a wider range of geometries than the prototypical object set which led to more varied object motions in response to contact. While our assumption was that objects are rigid, many of these are slightly deformable. One object featured concavities (lemonade) and three featured support surfaces that, while visually appearing flat, rested unevenly on the table leading to wobbly motion during sliding (pancake mix, coconut water, coffee beans). The purpose of the second object set is to investigate the robustness of our classification method to different object geometries and to identify and discuss failure cases.

\subsubsection{Data Collection}
Data were collected for objects individually. For each trial, an object was placed on the table in one of three conditions: (1) free-standing without constraints, (2) placed along the edge of a flat obstacle (a placemat) which promoted tipping, or (3) constrained against a wall. The arm was then commanded to move along pre-specified Cartesian paths which extended beyond the object, leading to a collision with the back of hand sensor. For each object, 20 trials were taken for each mobility condition -- half for which the tangential component of motion was zero and half for which it was equal to the normal component. Ground truth class labels were assigned by hand. The robot was commanded to stop if the force in the direction normal to the sensor surface exceeded 30\,N. This was monitored with the integrated F/T sensor at the UR16e wrist, but F/T data were not used for object motion classification. Between trials, the initial pose of the objects was manually shifted such that the object and sensor came into contact at different locations. To limit inertial effects, we command the robot to move at a speed of 10\,mm/s for all trials.

\begin{figure}[b!]
  \centering
  \includegraphics[width=\linewidth]{figures/tip_graph_slopesLabeled.png}
  \caption{Empirical tip data plotted over expected contact patch motion during tip at three heights, calculated as $R\theta$ where $\theta$ is found by solving eq.~\ref{eqn:loop}.}
  \label{fig:tip-graph}
\end{figure}

\begin{figure*}[t!]
\centering
\vspace{10pt}
  \includegraphics[width=
 \textwidth]{figures/classifier-fig-kminmean.png}
  \caption{A flowchart summarizing the steps for determining object motion category from tactile and proprioception data. Plots show real experimental data along with the conditions that signals must meet for tactile events to be predicted.
}
\label{fig:classifier}
\vspace{-12pt}
\end{figure*}

\subsection{Tactile Cue Selection}
Preliminary incidental contact data were used to identify which cues would be used for classification and to establish appropriate threshold values. To test the ability of eq.~\ref{eqn:loop} to predict tipping based on contact patch motion, we collected empirical results for motion of an object with known width being tipped by contact at three heights. Center of pressure locations calculated using the feature extraction method described in Sec.~\ref{feature-extraction} are plotted against analytical results in Fig.~\ref{fig:tip-graph}. To accommodate for a range of object widths, curvatures, and collision heights, we estimate that an object is tipping if the rate at which the contact patch moves in the direction of gravity as the robot moves into the object is between 1 and 5 (slopes shown in Fig.~\ref{fig:tip-graph}).

To identify contact with an immovable object, we hypothesized that signal intensity and contact patch growth could both serve as cues. However, it was observed from preliminary data that contact patch growth was highly variable between objects and trials, largely due to orientation changes of radially asymmetric objects. On the other hand, signal intensity, calculated from normalized tactile images as the mean value of taxels at the center of the contact patch, was found to be a good separator of contact with immovable and movable objects. As the signal for a mutual capacitance pressure sensor decreases with increasing pressure, we identify fixed contact if the average signal intensity (over one segment of the piecewise linear fit for signal intensity versus time data)  is less than 65. Figure~\ref{fig:classifier} illustrates the use of these cues for object motion classification, depicting the thresholds defined and examples of real data for each category.

\begin{figure}[b!]
  \centering
  \includegraphics[width=1\linewidth]{figures/confusion-matrices-biggerFont.png}
  \caption{Confusion matrices containing the result of classifying incidental contact with immovable, tipping, and sliding objects. Numerical results indicate number of trials.}
  \label{fig:confusion-matrices}
\end{figure}

\subsection{Classification Results \& Discussion}
Figure \ref{fig:confusion-matrices} shows classification results for incidental contact with immovable, tipping, and sliding objects. For objects in the prototypical set, simple and object-independent cues achieve 98\% accuracy in separating motion classes. Though the misclassifications are few, we note an interesting failure case for box-like objects. In a few cases where a box was placed such that it was likely to tip about a corner rather than a flat edge, contact caused it to tip in a direction orthogonal to the normal force, which was undetectable by the sensor.

Results for the more geometrically diverse real-world objects showed a combined accuracy of 92\%, where most confusion comes from mistaking tipping for sliding motion. 14 of the 18 misclassifications of tipping as sliding arose from two objects: coffee beans and lemonade. Deformable and granular coffee beans interacted with the sensor differently than rigid objects during tip events. During tip, the sensor would deform the object, causing a contact patch that often appeared nearly stationary rather than moving in the direction of gravity. When contact causing tip of the lemonade container occurred on areas featuring concavities, contacts did not travel smoothly down the length of the object, as we would expect with a convex object. Rather, the portion of the container that protruded the most would remain in contact with the sensor, causing the contact patch to travel upwards along the sensor rather than downwards. For difficult cases such as these, where rigidity and convexity assumptions do not hold, it may be necessary to identify the object prior to estimating motion. A complementary video is provided to demonstrate the use of this classification method.

\subsection{Analyzing Tangential Motion}
While the focus of this work is classifying object motion induced by applying normal force, we note that useful information can be extracted from tangential components of the data as well. By comparing the horizontal contact patch motion to the robot's tangential motion, one can estimate whether an object is stationary or moving as a result of the robot brushing against it. If horizontal contact patch motion is equal and opposite to the robot's motion, this indicates a stationary object. Otherwise, the brushing contact is causing the object to roll or slide. Figure \ref{fig:classifier} shows this distinction for data collected as the robot moves tangentially while in contact with a cylindrical object placed against a wall (fixed in the normal direction) both when the object is stationary and when it exhibits a combination of rolling and sliding.

\section{Conclusions and Future Work}
We present a method that uses incidental contact data from a tactile sensor on the back of a robotic hand to classify object motion. We show that our formulation of tactile cues is able to capture useful information about whether objects are movable or immovable and, if movable, whether contact results in safe sliding motion or potentially dangerous tipping. By using tactile data to understand the motions induced by incidental contact events, robotic manipulators reaching in clutter can rearrange objects without explicitly planning rearrangement motions or identifying the object in contact.

Future work involves applying this classification method to the full sensor network and developing reactive control methods which modify a robot's trajectory when a dangerous object motion is detected. A set of exploratory probing techniques could be designed to determine whether an object classified as immovable is completely fixed, or constrained only to move in certain directions. Additionally, methods for analyzing normal and tangential motion components -- perhaps with shear as well as normal tactile data -- could be combined to estimate objects' trajectories in more detail for higher level planning.

\addtolength{\textheight}{-12cm}

\section*{ACKNOWLEDGMENT}

The Beijing Institute of Collaborative Innovation (BICI) and Toyota Research Institute (TRI) provided funds to support this work. Added thanks to TRI for their help with the Allegro Hand hardware and setup. R.~Thomasson is additionally supported by the NSF Graduate Fellowship.
The authors thank Hojung Choi, Michael Lin, and Anthony Chen for their helpful discussions and insightful suggestions!

\bibliographystyle{unsrt}

\subsection{Design Considerations for Interaction in Cluttered Spaces}
\subsubsection{Coverage}
Although contacts during grasping and manipulation may be constrained to specific areas of the hand, contacts during reaching often occur on the backside of the hand, especially if reaching with fingers slightly flexed. To avoid undetected contacts, the skin should ideally cover the entire hand. The coverage achieved by our sensor network is displayed in Fig. \ref{fig:sensor-design}B.

\subsubsection{Curvature}
While flat tactile sensors are easier to manufacture, curvature is beneficial for capturing and tracking incidental contact events. As shown in Fig.~\ref{fig:curved-sensor}, flat sensors provide large contact areas when aligned with a surface, but are prone to quickly losing contact when there is any misalignment, such as the onset of tip. Adding curvature to the sensor in the direction of gravity leads to contacts which travel down the surface of the sensor as an object tips.

We develop a 2D kinematic model for contact point motion as a curved sensor tips an object. This will later be used to determine appropriate tactile cues for tip events. For a sensor with radius of curvature $R$ contacting a vertically uniform object of width $w$, one can determine the tip angle, $\theta$, of the object by solving the vector loop equation set up in Fig.~\ref{fig:curved-sensor}. We define two right-handed orthonormal bases: $\hat{n}_{xyz}$ and $\hat{b}_{xyz}$, fixed to the world and object, respectively. Unit vector $\hat{n}_x$ points along the ground and $\hat{n}_y$ points vertically upward and, initially, $\hat{b}_x = \hat{n}_x$ and $\hat{b}_y = \hat{n}_y$. The sensor contacts the object at height $h$ and moves along $\hat{n}_x$ a distance of $x$, causing the object to tip by $\theta$. We write a vector loop beginning and ending at $P$, the center of curvature of the sensor when it initially contacts the object, to obtain
\begin{equation}
    x \hat{n}_x + R \hat{b}_x - y \hat{b}_y + w \hat{b}_x - (R + w)\hat{n}_x = \Vec{0}.
    \label{eqn:loop}
\end{equation}
Taking the dot product of eq.~\ref{eqn:loop} with $\hat{n}_x$ and $\hat{n}_y$ produces two scalar equations which can be solved for $\theta$. The distance we expect the contact to move in the gravity direction can then be calculated as $R \theta$. Smaller radii may require a larger tip angle before contact patch motion indicating tip is detectable but larger radii will lose contact with a tipping object faster. The sensor used in experiments features a gentle curvature with a radius of 372\,mm.

\begin{figure}[thb]
\vspace{5pt}
  \centering
  \includegraphics[width=\linewidth]{figures/curved_sensor_tip_horizontal.png}
  \caption{Curved surfaces are beneficial for sensing tipping. A schematic illustrates the vector loop in eq.~\ref{eqn:loop}.}
  \label{fig:curved-sensor}
  \vspace{-12pt}
\end{figure}

\section{Introduction}

When operating in human environments, robotic manipulators will encounter scenarios where obstacle avoidance is impractical. For instance, consider the task of retrieving an item from the back of a kitchen cabinet. It is likely that a collision-free path either does not exist or is intractable to visually identify due to occlusions. However, many of the obstacles in the scene will be movable and can therefore be pushed aside to create a path to the target. In situations such as these, humans are comfortable reaching towards the target and allowing, but not explicitly planning for, incidental contacts which rearrange the scene as necessary for task completion. They are able to sense and adapt to these contacts in order to maintain safety.

\begin{figure}[thpb]
  \centering
  \vspace{10pt}
  \includegraphics[width=0.9\linewidth]{figures/reaching_through_obstacles_backgroundBlurred_cropped.png}\vspace{-0.1in}
  \caption{When reaching through clutter, especially if the identity and mobility of objects are unknown, tactile sensors on surfaces such as the back of the hand can be used to prevent unsafe contact events, such as toppling an object.  \vspace{-0.15in}}
  \label{fig:motivation}
  \vspace{-5pt}
\end{figure}

This work is aimed towards enabling a robotic manipulator to use incidental contacts during reaching for safe, passive object rearrangement.  We do not focus on identifying the objects in contact and our goal is not to plan motions that push objects into a desired pose. Rather, we allow unplanned contacts to occur and aim to sense them and evaluate their safety. To minimize the need to reason about specific object properties, we propose that the safety of a contact can be inferred from the object motion it induces. The robot should be able to distinguish between contacts that stably reposition objects without knocking them out of their stable poses
(e.g. sliding an object across the surface of a shelf) and those that may be destructive (e.g. toppling an object or continuing to push against an object that is fixed in the world). As cluttered scenes present a challenge for vision systems due to occlusions and light contact events may produce little visual change, we rely on distributed tactile sensing. Whereas most tactile sensors developed for robotics applications focus on the fingertips and nominal grasping surfaces of manipulators, incidental contacts may occur anywhere on the hand and indeed may occur most often on the back of the hand when reaching toward a target. Therefore, we present a tactile skin design that covers not only the inner grasping surfaces, but also the back and sides of the 16 degree of freedom Allegro Hand. We then explore techniques for locally classifying object motion at the contacts.

The contributions of this paper are:
\begin{itemize}
    \item an approach for reaching in clutter that uses tactile data to identify broad classes of object behavior and tactile cues that do not require identifying objects or object classes to predict behavior;
    \item a high-coverage, flexible sensor network for the Allegro Hand and its use to collect data during incidental contacts;
    \item demonstration of tactile cues for distinguishing immovable and movable objects, and further differentiating sliding (safe) and tipping (unsafe) motion.
\end{itemize}

\begin{figure*}[bht]
\vspace{5pt}
\centering
  \includegraphics[width=0.95
 \textwidth]{figures/sensor-design-combined-newCharacterization.png}\vspace{-0.1in}
  \caption{(\textbf{A}) The layers that comprise a networked sensor, shown for the back of the hand. (\textbf{B}) Sensorized Allegro Hand with electrodes exposed for clarity. (\textbf{C}) Signal change as force is applied to the back of hand sensor. Solid and dashed lines show the mean signal of 10 taxels during loading and unloading, respectively, and shaded regions show the standard deviation. \vspace{-0.1in}
}
\label{fig:sensor-design}
\vspace{-5pt}
\end{figure*}

\subsection{Related Work}
\subsubsection*{Tactile Sensors and Sensory Skins}
There has been extensive work on developing tactile sensors for robotic end-effectors, mainly aimed at providing information for grasping and manipulation. Yamaguchi et al.~\cite{yamaguchi2019recent} provide a review of recent developments in tactile sensing technology for robotic manipulation. For the most part, these sensors cover nominal grasping surfaces, most commonly the fingertips \cite{wettels2014multimodal, maslyczyk2017highly, khamis2018papillarray,donlon2018gelslim, padmanabha2020omnitact, gomes2020geltip, lambeta2020digit}, but occasionally also the proximal inner surfaces and palm (e.g.~\cite{heyneman2016slip, funabashi2022multi}).
A few sensors have been developed specifically for, or integrated with, the commercial Allegro Hand, a 16 degree of freedom (DOF) robotic gripper \cite{funabashi2022multi, romero2020soft, sommer2016multi}, but these do not cover the backside of the hand. Some tactile skins that can potentially cover large areas of robotic arms (e.g.~\cite{gruebele2021stretchable, cirillo2015conformable, goncalves2021punyo})
have also been developed but are not specialized for a multi-fingered hand such as the Allegro Hand.

While optical tactile sensors offer remarkable resolution and sensitivity for manipulation~\cite{donlon2018gelslim, padmanabha2020omnitact, gomes2020geltip, lambeta2020digit}, capacitive sensors are easier to distribute across the different surfaces of a robotic hand and offer adequate resolution. The sensor presented here is adapted from a design by Ruth et al.~\cite{ruth2021flexible}, and is placed on the front, back, and sides of an Allegro Hand (Fig.~\ref{fig:sensor-design}).

\subsubsection*{Reaching Through Obstacles}
Previous studies have addressed challenges of manipulation in clutter by introducing a rearrangement subtask, where objects are repositioned using prehensile manipulations \cite{srivastava2014combined, murali20206}, non-prehensile pushes \cite{dogar2011framework, yuan2018rearrangement, hasan2020human, huang2020mechanical}, or a combination of both \cite{lee2021tree}. Zhong et al. ~\cite{zhong2022soft} track contacts along multiple objects during rummaging with soft tactile sensors. Moll et al.~\cite{moll2017randomized} propose to avoid reasoning about specific interactions and note that, in many cases, controlling the final pose of every object in the scene is unnecessary. They present an open-loop method which allows pushing movable objects while avoiding collisions with fixed obstacles, assuming that the mobility of each object is known \emph{a priori}. In this work, we use tactile sensing to detect object mobility, which is initially unknown and may change over time. Jain et al.~\cite{jain2013reaching} developed an MPC controller which enables a robotic manipulator with whole-arm tactile sensing to reach through obstacles while keeping contact forces below a threshold. We propose that using object motion as an indication of safety, rather than force, will allow sliding aside objects using forces which could topple objects in other scenarios.

\subsubsection*{Object Mobility Classification}
The benefit of tactile sensing in detecting object motion within a grasp, most notably the onset of slip, has been well discussed in literature \cite{yamaguchi2019recent}. Recent work from Ma et al.~\cite{ma2021extrinsic} uses vision-based distributed tactile sensing to estimate constraints to motion of a grasped object in contact with the environment. Using a novel sensor which provides both visual and touch information, Razaei et al.~\cite{rezaei2021learning} predict the final resting pose of an object that contacts the sensor after being released from an unstable configuration. There has been comparatively little work using tactile data from incidental contact on a robotic manipulator to classify object motion. Bhattacharjee et al.~\cite{bhattacharjee2014inferring, bhattacharjee2012haptic} use whole-arm tactile sensing to classify objects as Rigid-Fixed, Rigid-Movable, Soft-Fixed, and Soft-Movable through various data-driven approaches. Here, we expand on this work to differentiate between safe object motion (i.e. sliding) and potentially dangerous object motion (i.e. tipping) and propose a classification method which relies on designed tactile cues rather than a data-driven approach.

\section{Distributed Tactile Sensor Design}
\label{sensor-design}
\subfile{sections/sensorDesignRearrangement}

\section{Technical Approach}
\subsection{Environment Assumptions}
\label{assumptions}
We consider a robot performing a planar reaching task in the presence of obstacles. Robot trajectories lie in a horizontal plane and consist of piecewise linear motions. Operating speeds are low enough that a quasi-static assumption applies (i.e. there is no dynamic evolution of the scene that is not associated with robot motion). We assume contacts occur on a sensorized surface of the hand. Objects may vary in geometry, but we assume they are convex, rigid, and feature a stable support surface which is initially in contact with the surface of the world. We note that non-convex objects can often be treated as locally convex if considering only their sliding or tipping motion. The mobility of objects is initially unknown.
They may be free to slide, constrained such that they are likely to tip, or immovable in certain directions. We consider any object which takes more than 20\,N to move to be immovable.

\subsection{Terminology}
We use the following terms to formulate expectations about how tactile signals evolve in response to various object behaviors: \textbf{Tactile Feature:} a quantity extracted from tactile data at an instant. Examples include shape, size, location, and intensity of contact patches. \textbf{Tactile Cue:} a measure of how tactile features evolve over time -- for instance, an increase in contact patch size. \textbf{Tactile Event:} the tactile response corresponding to an object behavior (tipping, sliding, or fixed contact events). A tactile event may correspond to one or more tactile cues.

\subsection{Object Motion Categories}
\label{motion-categories}
In general, object motion from incidental contact is complex and depends on the object's geometric and mass properties. For determining the safety of a contact interaction, it may suffice to broadly understand the object's motion category rather than estimating its trajectory. We consider the following categories:
\begin{itemize}
    \item \textbf{Immovable} in the direction of applied force either because it is fixed in the environment, constrained, or considered too heavy to push.
    \item \textbf{Sliding} across the working surface while remaining in its stable pose.
    \item \textbf{Tipping} out of its stable pose. Excessive tip may lead to toppling, potentially causing damage or spills.
\end{itemize}
We hypothesize that these broad motion categories can be inferred from tactile cues that are not highly object-dependent. Therefore, using tactile signals to categorize object behavior could allow robots to reason about the safety of their actions without needing to identify the object itself. There also exist objects without stable poses (e.g. spheres), which we do not explicitly consider here. In addition to sliding, these objects may also roll, which would produce similar tactile signals to sliding and is also considered locally safe.

Prior to choosing potential cues which indicate motion category, we note that radial symmetry of an object impacts the tactile signals we expect. In their stable poses, objects that are radially symmetric about the vector normal to the floor have two detectable degrees of freedom: motion in the directions normal and tangential to the sensor surface. Radially asymmetric objects have three detectable degrees of freedom in their stable poses, as rotation in the plane will affect the sensor signal, as illustrated in Fig.~\ref{fig:cp-ecpectations}.

\begin{figure}[t!]
\vspace{5pt}
  \centering
  \includegraphics[width=1\linewidth]{figures/contactPatch_expectations_diagonal_darkerWireframes.png}
  \caption{We can distinguish two planar DoFs for radially symmetric objects (e.g. cylinders) and three for radially asymmetric objects (e.g. boxes).  Out of plane motion (tip) provides another distinguishable DoF.}
  \label{fig:cp-ecpectations}
  \vspace{-10pt}
\end{figure}

\subsection{Tactile Feature Extraction}
\label{feature-extraction}

Our candidate tactile features are: (1) [x,y] location of the contact patch center of pressure, (2) contact patch area, and (3) intensity of the activated taxels within the contact patch. They are identified using the following processing steps. First, we represent the normalized data at each timestep as a greyscale image. Signal intensity is extracted at this step. We then use bicubic interpolation to obtain sub-taxel resolution. Next, thresholding is used to isolate the contact patch. The same threshold value was used across experiments. Image moments are used to calculate the center of pressure of the contact patch, $(C_x, C_y)$, using $C_x = \frac{M_{10}}{M_{00}}$ and $C_y = \frac{M_{01}}{M_{00}}$ where $M_{ij}$ is the $(i, j)^{th}$ image moment. Finally, a contour which surrounds the patch is found. To accommodate cases where contact with a single object results in multiple disjoint patches (due to sensor noise or light, uneven contact), we take the convex hull of all contours to combine them into a single patch before calculating area as illustrated in Fig.~\ref{fig:feature-extraction}A.

\subsection{Tactile Cue Extraction}
\label{tactile-cue-extraction}
Candidate tactile cues such as an increase in signal intensity or a contact patch motion may be straightforward to identify conceptually, but reliably deriving them from raw tactile data is more involved. While theoretically, one could consider a tactile cue to be a discrete change in a tactile feature between two points in time, we observe that it is more reliable to identify trends over sequences of tactile data. Indeed, due to real world factors such as sensor noise, uneven contact surfaces, and variations in friction between the objects and the table, discrete changes in the contact patch often instantaneously resemble tactile events that are not actually present. We perform a piecewise linear least squares fit on the evolution of extracted tactile features either over time or over the progression of a robot motion \cite{pwlf}. Two line segments are used to capture a change in object motion partway through the interaction (e.g. objects may initially slide then begin to tip). For each tactile feature, we consider the slopes and means over each line segment to be candidate tactile cues. Before performing the linear regression, the features are passed through the RANSAC algorithm to remove outliers caused by noise.

\begin{figure}[b!]
  \centering
  \includegraphics[width=1\linewidth]{figures/tactile-images-combined.png}
  \caption{(\textbf{A}) Snapshot tactile images taken from contact with a fixed cylinder and sliding box are shown at two stages of post-processing. Features extracted from the processed images are labeled. (\textbf{B}) Sequences of tactile images in which tactile events can be identified. }
  \label{fig:feature-extraction}
\end{figure}

\section{Experiments}
We now describe the process for collecting incidental contact data and discuss the selection process for tactile cues. We then present classification results for contacts with immovable, tipping, and sliding objects.

\subsection{Incidental Contact Data Collection}
\subsubsection{Experimental Setup}
Incidental contact data were collected using the sensor presented in Sec. \ref{sensor-design} on the back of the Allegro Hand, which was mounted on a UR16e robotic arm and stationed above a flat table. The hand was placed in a configuration suitable for reaching, with the fingers extended and the palm orthogonal to the table surface, as in Fig.~\ref{fig:motivation}. Future work will apply the approach demonstrated here on the back of the hand to the entire hand sensor network.

\begin{figure}[t!]
  \centering
  \vspace{10pt}
  \includegraphics[width=0.8\linewidth]{figures/new_object_sets.png}
  \caption{Two sets of objects used for experiments. Object dimensions and weights are listed in Table \ref{tab:objects}.}
  \label{fig:objects}
\end{figure}

\begin{table}[hbt]
    \centering
\begin{tabular}{ |l|c|c|c| }
\hline
Object & Dimensions [mm] & Weight [g] \\
\hline
(1) Glass Vase & 90 x 190 & 390  \\
(2) Cardboard Cylinder & 61 x 270 & 170   \\
(3) Salt Shaker & 68 x 208 & 910 \\
(4) Wooden Box & 100 x 165 x 230 & 420 \\
(5) Cardboard Box & 43 x 133 x 180 & 260 \\
(6) Pancake Mix & 60 x 155 x 208 & 960 \\
(7) Mayonnaise & 70 x 90 x 180 & 610 \\
(8) Coconut Water & 74 x 80 x 230 & 1060  \\
(9) Lemonade & 80 x 110 x 270 & 2000 \\
(10) Sunflower Oil & 76 x 76 x 240 & 950  \\
(11) Balsamic Vinaigrette & 45 x 103 x 204 & 300 \\
(12) Syrup & 70 x 106 x 255 & 900 \\
(13) Coffee Grounds & 90 x 140 x 180 & 620 \\
\hline
\end{tabular}
    \caption{Object Properties}
    \label{tab:objects}
    \vspace{-15pt}
\end{table}

\subsubsection{Object Sets}
We collected data for contact with two sets of objects, shown in Fig.~\ref{fig:objects}. The first set contains prototypical objects which are approximately rigid and geometrically simple (2 boxes and 3 cylinders). We expect motion categories for these objects to be separable using the tactile cues discussed in Sec.~\ref{tactile-cue-extraction}. The second set consists of eight additional commonplace kitchen objects. These objects display a wider range of geometries than the prototypical object set which led to more varied object motions in response to contact. While our assumption was that objects are rigid, many of these are slightly deformable. One object featured concavities (lemonade) and three featured support surfaces that, while visually appearing flat, rested unevenly on the table leading to wobbly motion during sliding (pancake mix, coconut water, coffee beans). The purpose of the second object set is to investigate the robustness of our classification method to different object geometries and to identify and discuss failure cases.

\subsubsection{Data Collection}
Data were collected for objects individually. For each trial, an object was placed on the table in one of three conditions: (1) free-standing without constraints, (2) placed along the edge of a flat obstacle (a placemat) which promoted tipping, or (3) constrained against a wall. The arm was then commanded to move along pre-specified Cartesian paths which extended beyond the object, leading to a collision with the back of hand sensor. For each object, 20 trials were taken for each mobility condition -- half for which the tangential component of motion was zero and half for which it was equal to the normal component. Ground truth class labels were assigned by hand. The robot was commanded to stop if the force in the direction normal to the sensor surface exceeded 30\,N. This was monitored with the integrated F/T sensor at the UR16e wrist, but F/T data were not used for object motion classification. Between trials, the initial pose of the objects was manually shifted such that the object and sensor came into contact at different locations. To limit inertial effects, we command the robot to move at a speed of 10\,mm/s for all trials.

\begin{figure}[b!]
  \centering
  \includegraphics[width=\linewidth]{figures/tip_graph_slopesLabeled.png}
  \caption{Empirical tip data plotted over expected contact patch motion during tip at three heights, calculated as $R\theta$ where $\theta$ is found by solving eq.~\ref{eqn:loop}.}
  \label{fig:tip-graph}
\end{figure}

\begin{figure*}[t!]
\centering
\vspace{10pt}
  \includegraphics[width=
 \textwidth]{figures/classifier-fig-kminmean.png}
  \caption{A flowchart summarizing the steps for determining object motion category from tactile and proprioception data. Plots show real experimental data along with the conditions that signals must meet for tactile events to be predicted.
}
\label{fig:classifier}
\vspace{-12pt}
\end{figure*}

\subsection{Tactile Cue Selection}
Preliminary incidental contact data were used to identify which cues would be used for classification and to establish appropriate threshold values. To test the ability of eq.~\ref{eqn:loop} to predict tipping based on contact patch motion, we collected empirical results for motion of an object with known width being tipped by contact at three heights. Center of pressure locations calculated using the feature extraction method described in Sec.~\ref{feature-extraction} are plotted against analytical results in Fig.~\ref{fig:tip-graph}. To accommodate for a range of object widths, curvatures, and collision heights, we estimate that an object is tipping if the rate at which the contact patch moves in the direction of gravity as the robot moves into the object is between 1 and 5 (slopes shown in Fig.~\ref{fig:tip-graph}).

To identify contact with an immovable object, we hypothesized that signal intensity and contact patch growth could both serve as cues. However, it was observed from preliminary data that contact patch growth was highly variable between objects and trials, largely due to orientation changes of radially asymmetric objects. On the other hand, signal intensity, calculated from normalized tactile images as the mean value of taxels at the center of the contact patch, was found to be a good separator of contact with immovable and movable objects. As the signal for a mutual capacitance pressure sensor decreases with increasing pressure, we identify fixed contact if the average signal intensity (over one segment of the piecewise linear fit for signal intensity versus time data)  is less than 65. Figure~\ref{fig:classifier} illustrates the use of these cues for object motion classification, depicting the thresholds defined and examples of real data for each category.

\begin{figure}[b!]
  \centering
  \includegraphics[width=1\linewidth]{figures/confusion-matrices-biggerFont.png}
  \caption{Confusion matrices containing the result of classifying incidental contact with immovable, tipping, and sliding objects. Numerical results indicate number of trials.}
  \label{fig:confusion-matrices}
\end{figure}

\subsection{Classification Results \& Discussion}
Figure \ref{fig:confusion-matrices} shows classification results for incidental contact with immovable, tipping, and sliding objects. For objects in the prototypical set, simple and object-independent cues achieve 98\% accuracy in separating motion classes. Though the misclassifications are few, we note an interesting failure case for box-like objects. In a few cases where a box was placed such that it was likely to tip about a corner rather than a flat edge, contact caused it to tip in a direction orthogonal to the normal force, which was undetectable by the sensor.

Results for the more geometrically diverse real-world objects showed a combined accuracy of 92\%, where most confusion comes from mistaking tipping for sliding motion. 14 of the 18 misclassifications of tipping as sliding arose from two objects: coffee beans and lemonade. Deformable and granular coffee beans interacted with the sensor differently than rigid objects during tip events. During tip, the sensor would deform the object, causing a contact patch that often appeared nearly stationary rather than moving in the direction of gravity. When contact causing tip of the lemonade container occurred on areas featuring concavities, contacts did not travel smoothly down the length of the object, as we would expect with a convex object. Rather, the portion of the container that protruded the most would remain in contact with the sensor, causing the contact patch to travel upwards along the sensor rather than downwards. For difficult cases such as these, where rigidity and convexity assumptions do not hold, it may be necessary to identify the object prior to estimating motion. A complementary video is provided to demonstrate the use of this classification method.

\subsection{Analyzing Tangential Motion}
While the focus of this work is classifying object motion induced by applying normal force, we note that useful information can be extracted from tangential components of the data as well. By comparing the horizontal contact patch motion to the robot's tangential motion, one can estimate whether an object is stationary or moving as a result of the robot brushing against it. If horizontal contact patch motion is equal and opposite to the robot's motion, this indicates a stationary object. Otherwise, the brushing contact is causing the object to roll or slide. Figure \ref{fig:classifier} shows this distinction for data collected as the robot moves tangentially while in contact with a cylindrical object placed against a wall (fixed in the normal direction) both when the object is stationary and when it exhibits a combination of rolling and sliding.

\section{Conclusions and Future Work}
We present a method that uses incidental contact data from a tactile sensor on the back of a robotic hand to classify object motion. We show that our formulation of tactile cues is able to capture useful information about whether objects are movable or immovable and, if movable, whether contact results in safe sliding motion or potentially dangerous tipping. By using tactile data to understand the motions induced by incidental contact events, robotic manipulators reaching in clutter can rearrange objects without explicitly planning rearrangement motions or identifying the object in contact.

Future work involves applying this classification method to the full sensor network and developing reactive control methods which modify a robot's trajectory when a dangerous object motion is detected. A set of exploratory probing techniques could be designed to determine whether an object classified as immovable is completely fixed, or constrained only to move in certain directions. Additionally, methods for analyzing normal and tangential motion components -- perhaps with shear as well as normal tactile data -- could be combined to estimate objects' trajectories in more detail for higher level planning.

\addtolength{\textheight}{-12cm}

\section*{ACKNOWLEDGMENT}

The Beijing Institute of Collaborative Innovation (BICI) and Toyota Research Institute (TRI) provided funds to support this work. Added thanks to TRI for their help with the Allegro Hand hardware and setup. R.~Thomasson is additionally supported by the NSF Graduate Fellowship.
The authors thank Hojung Choi, Michael Lin, and Anthony Chen for their helpful discussions and insightful suggestions!

\bibliographystyle{unsrt}

\subsection{Design Considerations for Interaction in Cluttered Spaces}
\subsubsection{Coverage}
Although contacts during grasping and manipulation may be constrained to specific areas of the hand, contacts during reaching often occur on the backside of the hand, especially if reaching with fingers slightly flexed. To avoid undetected contacts, the skin should ideally cover the entire hand. The coverage achieved by our sensor network is displayed in Fig. \ref{fig:sensor-design}B.

\subsubsection{Curvature}
While flat tactile sensors are easier to manufacture, curvature is beneficial for capturing and tracking incidental contact events. As shown in Fig.~\ref{fig:curved-sensor}, flat sensors provide large contact areas when aligned with a surface, but are prone to quickly losing contact when there is any misalignment, such as the onset of tip. Adding curvature to the sensor in the direction of gravity leads to contacts which travel down the surface of the sensor as an object tips.

We develop a 2D kinematic model for contact point motion as a curved sensor tips an object. This will later be used to determine appropriate tactile cues for tip events. For a sensor with radius of curvature $R$ contacting a vertically uniform object of width $w$, one can determine the tip angle, $\theta$, of the object by solving the vector loop equation set up in Fig.~\ref{fig:curved-sensor}. We define two right-handed orthonormal bases: $\hat{n}_{xyz}$ and $\hat{b}_{xyz}$, fixed to the world and object, respectively. Unit vector $\hat{n}_x$ points along the ground and $\hat{n}_y$ points vertically upward and, initially, $\hat{b}_x = \hat{n}_x$ and $\hat{b}_y = \hat{n}_y$. The sensor contacts the object at height $h$ and moves along $\hat{n}_x$ a distance of $x$, causing the object to tip by $\theta$. We write a vector loop beginning and ending at $P$, the center of curvature of the sensor when it initially contacts the object, to obtain
\begin{equation}
    x \hat{n}_x + R \hat{b}_x - y \hat{b}_y + w \hat{b}_x - (R + w)\hat{n}_x = \Vec{0}.
    \label{eqn:loop}
\end{equation}
Taking the dot product of eq.~\ref{eqn:loop} with $\hat{n}_x$ and $\hat{n}_y$ produces two scalar equations which can be solved for $\theta$. The distance we expect the contact to move in the gravity direction can then be calculated as $R \theta$. Smaller radii may require a larger tip angle before contact patch motion indicating tip is detectable but larger radii will lose contact with a tipping object faster. The sensor used in experiments features a gentle curvature with a radius of 372\,mm.

\begin{figure}[thb]
\vspace{5pt}
  \centering
  \includegraphics[width=\linewidth]{figures/curved_sensor_tip_horizontal.png}
  \caption{Curved surfaces are beneficial for sensing tipping. A schematic illustrates the vector loop in eq.~\ref{eqn:loop}.}
  \label{fig:curved-sensor}
  \vspace{-12pt}
\end{figure}

redpajama_set_name: RedPajamaArXiv


When you tell her you'll love her for always, you'll want a one-of-a-kind diamond engagement ring to signify your love. At Karats Jewelers in Overland Park, you'll find a lovely selection of the finest diamond engagement rings. We are proud to be an authorized dealer of A. Jaffe engagement rings. This ME2029Q Sidestone is part of the stylish Classics collection. Crafted of 18k white gold this A. Jaffe ring features beautiful details and will be worn and enjoyed.
Make an appointment or contact us for more information on A. Jaffe. Please fill out the form below and a A. Jaffe specialist will contact you regarding the A. Jaffe Classics ME2029Q as soon as possible.


text:
FCPTL – Lots of Teams Making New Year Wishes
Fairfield County, Leagues
Happy New Year! For many of the teams in the Fairfield County Platform Tennis League (FCPTL), the hope is that the start of 2013 is a happy one and rings in a division title, division promotion or even just avoidance of divisional demotion. Only 4 weeks remain in the FCPTL season and most of the divisions remain tightly contested. Here's a quick look back at some of the final matches from 2012 and the Featured Match of the Week for this upcoming weekend.
Wee Burn ended 2012 on a strong note with a 4-0 sweep of Greenwich Field Club, highlighted by Wee Burn's Sebastian Bredberg and Boie Bogardus come-from-behind win at the 1 spot over Lennart Jonason and Ted Danforth. Trailing 5-2 in the third and fighting off several match points, Wee Burn's Swedish pro and partner rallied to beat Greenwich's Swedish pro and partner 7-5 in the third. Wilton Y was unable to keep pace with Wee Burn after its 2-2 tie with New Canaan FC and now trails Wee Burn by 3 points in the standings. At the other end of the standings, the fight to avoid demotion got much tighter. Greenwich FC's loss moved them to the bottom of the standings, while Milbrook, Rowayton 1.2 and Darien Town all got wins to tighten things up. Seven teams are separated by only 3 points at the bottom of the standings.
Featured Match of the Week
Greenwich Field Club vs Darien Town: two teams battling to avoid demotion to Division 2. With only 4 matches left in the season, there is little margin for error for any team these days. Greenwich Field Club has the potential to field a strong team but does not always get their players out. They will need to do so in January to avoid demotion and it's likely they will come out fighting this week. With a ton of snow in Vermont, there's good chance that Darien Town will be missing their top player, Mike McCann, this week. If so, it could be tough for Darien to match up versus Greenwich FC especially with the league limiting them to only two out-of-towners.
Woodway CC swept Stamford Yacht 4-0 to move 3 points ahead of Wilton Y 2.1 who was surprisingly swept by Round Hill Club. Woodway CC now firmly controls their own destiny especially as they still have a match with second-place Wilton Y 2.1 coming in 3 weeks. However, with Darien Town, Wilton Y 2.2 and Stamford Italian Center all registering wins at the end of the year, Divison 2 has gotten to be a most interesting race. Only 6 points separate the 2nd place team from the 11th place team meaning that every week could see a team move from the promotion spot to the demotion spot.
New Canaan Field Club vs New Canaan Country Club: Another match with significant impact on which team could get demoted to Division 3. Add in the in-town rivalry and familiarity with the players and you get a potential barn-burner. New Canaan FC currently sits in the 2nd demotion spot but is only 1 point from the safety zone and only 2 points behind New Canaan CC. Field Club needs no worse than a split to keep their hopes alive for staying in Division 2. However, if New Canaan CC pro, George Wilkinson, is in the lineup that probably means Field Club will need to take 2 of the last 3 matches. Good news for Field Club is that Wilkinson is scheduled to play in the CT States Mixed Tournament this Saturday and given his perpetual health issues, he may chose to skip the league match.
The title race in Division 3 tightened considerably at the end of the year. Rowayton kept its lead atop the division with a 3-1 win over Woodway CC. In a pivotal match, Greenwich CC took a 3-1 win over Wilton Y 3.2. Only a 3-set win at the 3 spot by Greg Fennessey and Mac McCullough prevented the Greenwich CC swept but the end result was Greenwich CC leapfrogging Wilton Y 3.2 into the coveted second place spot. Wins by Burning Tree, New Canaan Town and Lake Club kept them within close range of the second spot as well and currently only 4 points separate 6 teams from promotion to Division 2.
Burning Tree CC vs Lake Club: This match could be make or break for both team's chances of moving up to Division 2. Burning Tree CC sits 1 point behind Greenwich CC for the second promotion spot while Lake Club, at 4 points behind Greenwich CC, still has a shot at moving up. Realistically, Lake will need at least a 3-1 win to maintain any hopes for promotion with only 4 weeks remaining. That could be a tall order against at Burning Tree team with pro Jack Waite and the motivation of needing a win to stay in the hunt for a chance to move up to Division 2.
The race for the Division 4 title has been a tight see-saw battle all season and the last week of 2012 was no difference. Division leader Middlesex Club lost 2 tough 3-setters at the first 2 spot and could only manage a 2-2 tie versus Milbrook. Patterson Club had been tied with Middlesex but now trails by 1 point after a 3-1 loss to Wilton Riding Club. The other contenders for the top 2 spots, Tokeneke Club and Stamford Yacht, were also only able to muster ties. Consequently, the top 6 teams are only separated by 5 points. Likewise at the bottom of the division, only 4 points separate 5 teams from the last demotion. All in all, it should make for an exciting January in Division 4.
Middlesex Club vs Patterson Club: first place versus second place – it doesn't get better than this scenario. Middlesex has the home court advantage but ultimately the match should come down to which team can field their best lineup. Neither team should have an excuse for missing anyone significant as, coming off a three-week break, both teams should be well-rested and prepared for the match.
This may be the last time Aspetuck Valley CC gets mentioned in the Division 5 write-ups. With another 4-0 victory (this time over Middlesex Club), Aspetuck has clinched the Division 5 title as they stand 12 points ahead of the pack with only 3 matches left. Congratulations to the juggernaut that is Aspetuck. FCPTL historians are searching to see if this is the earliest a team has clinched a division – Milbrook and Round Hill Club had similar paths up the FCPTL ranks during the naught years. Unless Aspetuck loses a match or a point, the focus will be on the other promotion and demotion spots in Division 5. Darien Town appeared to have the second promotion spot well in hand but suffered a 3-1 loss to Greenwich CC when they couldn't pull out 2 tough-setters. Third-place Stamford Italian Center failed to take advantage of Darien's result as they lost 3-1 to Wee Burn CC, who moved into 4th place just behind Stamford Italian Center and 2 points from Darien Town. At the bottom of the standings, Middlesex fell into a tie with Wilton Riding Club for the 2nd demotion spot after Wilton Riding managed to pick up one point against New Canaan CC.
Middlesex Club vs Greenwich CC: Another match with demotion consequences. Middlesex currently sits in the 2nd demotion spot for Division 5. Greenwich CC is only 3 points ahead of Middlesex. Middlesex desperately needs a win if they are to avoid the drop to Division 6. However, with Middlesex's Division 4 team potentially playing for a title, it is unlikely Middlesex's Division 5 team will get any reinforcements from above. It could be an up-and-down weekend for the Darien-based club.
The three team race in Division 6 saw no change in the standings as Darien CC, Lake Club 6.1 and Weston Field Club all posted 3-1 victories. The 3 teams remain tied atop the division with identical 21-11 records. Meanwhile the bottom of the division is equally tight. 8 teams are only separated by 4 points for the 2nd relegation spot while Lake Club 6.2 looks likely to finish in the basement unless things turn dramatically in the last 3 matches for them.
Middlesex Club vs Lake Club 6.2: There seems to be a common theme this week to Featured Match of the Week – Middlesex Club and matches with demotion consequences. Division 6 has both elements. Middlesex and Lake Club 6.2 are dead in the mix for the 2 demotion spots to Division 7. While Middlesex is unlikely to get reinforcements from above (see Division 4 and 5 FMOW), Lake Club 6.2 is also unlikely to get help as their sister team, Lake Club 6.1 is wrapped up in the title hunt for Division 6. This match looks like a total toss-up.
Aspetuck Valley continued its quest to match the division title won by their compatriots in Division 5 as they took an easy 4-0 sweep over Burning Tree CC. Darien Town kept paced with Aspetuck with a 4-0 sweep over Wee Burn CC and remains just 2 points behind in the standings. Right now it looks like Aspetuck and Darien have the top two spots well in hand, however, Patterson Club is lurking in third place and could sneak ahead of Darien if they win their match up later this season.
Silver Spring CC vs Patterson Club: While Aspetuck Valley CC and Darien Town appear to have a solid hold on the two promotion spots for Division 7, Silver Spring CC and Patterson Club still have an outside shot at sneaking into Division 6. After a slow start, Silver Spring CC has been rounding into form. Meanwhile Patterson Club has been steady all season. If either team could get a 4-0 sweep, they could keep Aspetuck and Darien in their sights. The worse scenario for both is probably a 2-2 tie.
Boie Bogardus
FCPTL
George Wilkinson
Jack Waite
Lennart Jonason
Mike McCann
Sebastian Bredberg
Philly D1 Paddle Week 10 in Review
Connecticut State Mixed draws have been released

redpajama_set_name: RedPajamaCommonCrawl


... is a neat, open-ended site that allows you collect and manage anything from pdf.-files to web addresses––a useful tool in whatever capacity you use it. You could call it a cross between social media and a wiki. It seems to me to have been designed for and by artistic-types with an eye towards facilitating collaborative projects, grounded in the values and critical thinking behind the emergent transdisciplinary fields of 'artistic research' and 'systems studies'. I usually use it to collect quotes and an array of weblinks as prep for potential projects. If you're interested for whatever reason you can find mine here.


Egyptian astronomers computed the position of the planet Mercury with methods originating from Babylonia. This is proven by a study of two unpublished Egyptian instructional texts from the Ashmolean Museum (Oxford) by Mathieu Ossendrijver, Assyriologist and historian of science, currently Research Fellow of the Netherlands Institute for the Near East (NINO), Leiden University, and Andreas Winkler, Egyptologist at the Oriental Institute (Oxford University). The texts date to 1-50 AD and are written in the Demotic language, a late stage of ancient Egyptian, on two ostraca (potsherds). They are the only known texts from Greco-Roman Egypt with instructions for computing astronomical phenomena with Babylonian methods. The instructions correspond exactly to methods invented in Babylonia several centuries earlier (400-300 BC). Surprisingly, the ostraca employ a mathematical formulation not found in Babylonian texts but whose existence has long been suspected by historians of astronomy. The ostraca prove that native Egyptian scholars were as competent in Babylonian astronomical computation as their colleagues writing in Greek and they suggest a more important role for native Egyptian scholars in the transmission of Babylonian astronomy to Greco-Roman Egypt than previously known.
By the early second century BC Babylonian astrology and astronomy spread to Egypt. Like their Babylonian colleagues, Egyptian astrologers began to produce horoscopes in order to determine the fate of a newborn. The production of a horoscope required computing the zodiacal positions of Moon, Sun and the five planets known in antiquity – Mercury, Venus, Mars, Jupiter, and Saturn. Both Demotic horoscopes, written in a late stage of Ancient Egyptian, and Greek horoscopes have been found in Egypt. In 1999, the American historian of astronomy Alexander Jones proved that some Egyptian astrologers writing in Greek used Babylonian methods, e.g. for Mercury. Thus far only little was known about the computational methods of the native Egyptian astrologers writing in Demotic. In 1972, the Dutch mathematician Bartel van der Waerden proved that Babylonian methods were used in order to determine the positions of Mars and Jupiter in a single Demotic text.
The two newly identified Demotic texts with computational instructions shed new light on the mathematical skills of the native Egyptian astrologers. Both ostraca contain instructions regarding three distinct Babylonian algorithms. Each of them is concerned with a particular phenomenon of Mercury: its first appearance as an evening star, its first appearance as a morning star, or its last appearance as a morning star. The inscriptions offer the firsts unequivocal proof that native Egyptian astrologers, like their colleagues writing in Greek, were capable of computing positions of Mercury, a planet with a comparably complicated motion, using Babylonian methods. An analysis of the instructions suggests that the Egyptian scholars adapted these methods before their colleagues writing in Greek and independently from them. First, the ostraca predate all known Greek tables for Mercury that were computed with these methods - they are in fact the only instructional texts with Babylonian astronomy that have been found in Egypt thus far. Secondly, they use a Babylonian loanword for "degree", while the astrologers writing in Greek used a Greek word for this.
A surprising aspect of the instructions is that they employ a mathematical formulation that is unknown from Babylonia. While the Babylonians compute the variable distance travelled by Mercury along the zodiac, e.g. between two occurrences of its first appearance as an evening star, directly, the Egyptian scholars first divide the zodiac into tiny steps of variable length. The distance travelled by Mercury they obtain by counting off a fixed number of these steps, with the identical result as obtained by their Babylonian colleagues. In 1957 the mathematician Bartel van der Waerden first suggested the existence of this alternative formulation. It has not yet been identified in any Babylonian text, but now in two Demotic texts written by native Egyptian scholars.


text:
package com.rdecky.asmcalc.lookup;
import android.app.SearchManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.SearchView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Adapter;
import android.widget.CheckBox;
import android.widget.FrameLayout;

import com.rdecky.asmcalc.R;
import com.rdecky.asmcalc.data.DatabaseHelper;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class LookupFragment extends Fragment implements SearchView.OnQueryTextListener{

        private static List<LookupItem> lookupItemList;
        static RecyclerViewAdapter rvAdapter;
        private RecyclerView rv;
        private static DatabaseHelper databaseHelper;

        private static final Comparator<LookupItem> LOOKUP_ITEM_COMPARATOR = new Comparator<LookupItem>() {
            @Override
            public int compare(LookupItem lhs, LookupItem rhs) {
                return lhs.getText().compareTo(rhs.getText());
            }
        };
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            View v = inflater.inflate(R.layout.lookup_fragment, container, false);
            super.onCreate(savedInstanceState);

            setHasOptionsMenu(true);
            rv = (RecyclerView) v.findViewById(R.id.my_recycler_view);

            //RecyclerView should never change size
            rv.setHasFixedSize(true);

            //set up a linear LayoutManager for the RecyclerView
            RecyclerView.LayoutManager rvLayoutManager = new LinearLayoutManager(v.getContext());
            rv.setLayoutManager(rvLayoutManager);

            //set up an adapter for the RecyclerView
            rvAdapter = new RecyclerViewAdapter(getContext(), LOOKUP_ITEM_COMPARATOR, rv, databaseHelper);
            rv.setAdapter(rvAdapter);

            FloatingActionButton fab = (FloatingActionButton) v.findViewById(R.id.new_button);
            fab.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent intent = new Intent(getActivity(), ItemActivity.class);
                    startActivity(intent);
                }
            });

            refresh();
            return v;
        }
        /**
         * Refresh the list in the RecyclerViewAdapter to mirror what is in the database.
        */
        public static void refresh(){
            //ArrayList of objects for the RecyclerView
            lookupItemList = new ArrayList<>();
            List<String[]> items = databaseHelper.selectAll();
            Log.d("LookupFragment", "Size: " + items.size());
            //clear whatever is currently in the list
            rvAdapter.clear();

            for (int i = 0; i < items.size(); i++){
                String[] row = items.get(i);
                lookupItemList.add(new LookupItem(Integer.parseInt(row[0]), row[1], row[2], row[3], row[4]));
            }
            rvAdapter.add(lookupItemList);
        }

        public static LookupFragment newInstance(DatabaseHelper dbHelper) {
            LookupFragment f = new LookupFragment();
            databaseHelper = dbHelper;
            Bundle b = new Bundle();
            f.setArguments(b);
            return f;
        }
        @Override
        public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
            // Inflate the menu; this adds items to the action bar if it is present.
            inflater.inflate(R.menu.lookup_fragment_menu, menu);
            super.onCreateOptionsMenu(menu, inflater);

            // Associate searchable configuration with the SearchView
            SearchManager searchManager = (SearchManager) getActivity().getSystemService(Context.SEARCH_SERVICE);
            SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
            searchView.setSearchableInfo(searchManager.getSearchableInfo(getActivity().getComponentName()));
            searchView.setOnQueryTextListener(this);
        }

        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            refresh();
            final List<LookupItem> filteredList = filter(lookupItemList, newText);
            rvAdapter.replaceAll(filteredList);
            rv.scrollToPosition(0);
            return true;
        }
        private static List<LookupItem> filter(List<LookupItem> models, String query) {
            final String lowerCaseQuery = query.toLowerCase();
            final List<LookupItem> filteredModelList = new ArrayList<>();
            for (LookupItem model : models) {
                final String text = model.getText().toLowerCase();
                if (text.contains(lowerCaseQuery)) {
                    filteredModelList.add(model);
                }
            }
            return filteredModelList;
        }
}

redpajama_set_name: RedPajamaGithub


Show Off Saturday... the Blueberry Pie Quilt!
You know me… I'd much rather be sewing than cooking.
This week decided to put a design that I have been working on to the test and see how it would look in real life… my Blueberry Pie Quilt!
The Blueberry Pie is a modified log cabin design that uses fabrics in only two color ways: 'crust' and 'blueberry'!
Of course, you could make raspberry, strawberry, lemon, or chocolate pies, instead, lol.
And it's jelly roll friendly. Are you hungry yet???
Keep your eyes open for the 'Blueberry Quilt' coming soon to the blog. I can't wait to share this fun and easy quilt with you.
In the meantime, here are 5 Log Cabin Quilts you Have to Try!


Remember a few weeks ago when Michael cut the heart out in the bedroom wall sheetrock? It was a sweet gesture but it certainly wasn't meant to stay that way. When we tore out the original two bedrooms and created the master bedroom with a cathedral ceiling, I decided to create a large attic space as well. Michael offered to build a quaint, little attic door and quickly designed one using some old barn boards he had salvaged from a previous job.
He cut the barn boards and built the door using clamps and a plywood backing.
Then he cut the boards to make the trim, and nailed them around the doorway.
After that, Michael installed the door reusing old hinges on the inside of the door.
Michael offered a bunch of antique pieces he found in an old basement. He thought he could use them on the door.
There was a copper window panel that probably came off a lantern, some iron strap hinges and a brass door pull.
He attached them all to the door.
Ooh, it looks like a little gnome is about to open the door and pop his head out. I love, love, love it!
Michael is such a creative carpenter.
This is how the door looks from across the room. What do you think?
By the way, all those holes you see in the beams will be filled with hand-carved pegs.
If I don't lose power tomorrow, I'll write about the window and door trim!
I do hope you will be safe throughout the storm.


text:
CNEWA CANADA |
Any opinions or comments expressed on ONE-TO-ONE do not necessarily reflect the views of CNEWA.
Where Young Refugees Are Finding 'Blissful Joy'
Picture of the Day: Signs of Opportunity in Kerala
Page One: Headlines for 7/16/19
Picture of the Day: Poised to Pray in Armenia
Picture of the Day: Active Participation
Page One: Headlines for 7/8/19
Going Places This Summer? Remember to Take Along ONE
90 Years, 90 Heroes
An Ethiopian Odyssey
Catholic Churches
CNEWA Connections
CWL 2014
Friday Film Festival
Holy Land 2013
Holy Land Pilgrimage 2012
In the Footsteps of St. Thomas
Journey Through the South Caucasus
Journey to Iraq
Journey to Jordan
Journey to Lebanon 2017
Journey to the Holy Land
Kerala Flood
Lebanon 2014
Messenger of Peace
Orphanages
Orthodox Churches
Pontifical Mission
Spotlight on the Eastern Churches
Year of the Sisters 2015
CNS Blog
by Greg Kandra
Pope Francis has just appointed Jesuit Bishop Felix Toppo of Jamshedpur to be the new archbishop of Ranchi in India. (photo: Diocese of Jamshedpur)
Pope appoints new archbishop in Ranchi, India (Vatican News) Pope Francis on Sunday appointed a new archbishop in Ranchi in the eastern Indian state of Jharkhand. He transferred Jesuit Bishop Felix Toppo of Jamshedpur to Ranchi as its new Archbishop. Bishop Felix takes over from 78-year old Cardinal Telesphore Toppo whose resignation the Holy Father has accepted. The cardinal reached the retirement age of 75 in 2014 as stipulated by the Code of Canon Law…
Grenade blast kills one, injures dozens at rally in Ethiopia (Vatican News) The Ethiopian Prime Minister has condemned a grenade blast that killed at least one person and injured at least 154 others at a rally in Addis Ababa. The explosion struck a rally by supporters of Ethiopia's new Prime Minister Abiy Ahmed. He had just wrapped up delivering a speech, when the blast — thought to have been caused by a hand grenade — went off…
Five women from Jesuit school gang-raped in India (UCANews.com) Five women were abducted from a Jesuit-managed school and gang-raped in a forest near the Khunti area of India's Jharkhand state, police said. Unidentified men on six motorcycles took away the women on the afternoon of 20 June while they were performing a play about social awareness, said A.V. Homkar, the area's senior police official…
Jordan says it can't accept more Syrian refugees (The Jordan Times) Jordan warned on Sunday that it cannot receive more Syrian refugees, saying it was intensifying talks with the US and Russia following air strikes on rebel-held towns in southern Syria. "We have received enough numbers of Syrian refugees; we already have a large number and we simply cannot receive more," Minister of State for Media Affairs Jumana Ghunaimat told The Jordan Times over the phone on Sunday…
Photo essay: the Syrian women and children waiting in the shadows of Lebanon's camps (The Independent) There is real compassion and sympathy from landlords, employers and neighbors to what is perhaps the world's greatest humanitarian crisis. Lebanese families have been known to take in refugees, also help set them up with furniture for their homes…
Tags: India Ethiopia Jordan


text:
Log Cabins – All about Log Cabins
By Simon Hyatt
From antiquity, one of mankind's most basic needs has been shelter. From ancient times to the modern era, humanity has continuously developed sophisticated housing to suit our evolving needs. Though we've created many forms of housing over the centuries, the simple log cabin still holds our fascination and is as popular as ever. Log cabins are often associated with camping sites, but more and more people are investing in log cabins for private living. In the featured video, we observe several gentlemen utilizing hand held tools to construct a log cabin from the ground up. Their attention to detail and expert handling of the wood clearly demonstrates their desire to build a properly insulated and sturdy structure. Despite this, there are several nuances to constructing a log cabin that isn't entirely evident in the video. Let's take a more in-depth look at what it takes to build a log cabin.
Featured Log Cabin Video – Building a Log Cabin by Hand
When a building log cabin is with the use of timber which can be shaped into several profiles like window frames and wall log. Depending on the profile of the wood, any number of nails, fasteners, or spikes can be used to fix the timber in place as they're stacked horizontally to form the walls of the structure. Let's take a look at the main types of log profiles.
1) Square and Rectangular Log
These logs are cut with four square corners and often take on the shape of a rectangle.
2) Round Log
These logs are cut in a circular pattern, with no corners or angles to speak of. Homes built with a round log profile typically use thru-bolts for support.
3) Swedish Cope
These logs are also cut in a circular fashion, though a small crescent-shaped portion of the bottom is cut away so that it's much easier for the logs to stack on top of each other.
4) D-Log
D-logs are unique in that one side of the log is cut completely flat whereas the other side is cut round. D-log homes are perfect for people who enjoy a round aesthetic on one end (such as the outward facing side), but a flat surface on the other end.
5) Handcrafted
Handcrafted log homes are perfect for those who desire a rustic look. Each log retains its natural shape, and each timber is debarked by hand. Maximum stability is maintained because each log is placed in a precise location within the structure. This is a popular style amongst many vacation sites.
Corner Style
Just as important as the log profile is the corner style of the log cabin.
1) Interlocking corners
The four sides of a log are cut away, creating a recess in which intersecting logs can securely lock into place in all directions.
2) Saddle-Notch Corners
This corner style is often used with the Swedish cope profile. Crescents are cut into each log, allowing logs facing in the opposing direction to lock firmly in place at the corners.
3) Dove Tail
With this corner style, the end of a log is cut into a pattern known as a "fan-shaped wedge." When the logs are stacked to form the cabin, the wedge on the tail end of the log cabin fit firmly into the perpendicular logs.
4) Butt and Pass
When a log meets a perpendicular log, it stops. The perpendicular log in question characteristically extends past the corner of the log cabin.
5) Corner Post
Logs extend forward until they reach a vertical post that has a number of holes cut along its length in which the logs fasten securely.
Without tools, it would be impossible to build a log cabin. With that being said, selecting the right tools for the job will ensure you complete the project quickly and efficiently. Let's take a look at a few must-have tools when you're constructing a log cabin.
Adze (Or Adz)
The adze is an uncommon tool that's designed to hew logs. The adze and the axe share a few similarities, but the defining difference between the two is that the cutting blade of the adze is perpendicular with the handle at the base. In terms of appearance, the adze looks more akin to a gardening hoe rather than an axe.
The axe is the most common instrument associated with traditional log cabins. An axe is a hand tool that is used to fell and harvest logs. In terms of age, the axe is older than the adze. However, they both hail from the stone age. When building a log cabin, the axe can be used for hundreds of applications. You can use it to prepare lumber, harvest trees, cut notches and so on. Chainsaws are preferably used when precision is in order, but it's likely the axe will always remain the most popular tool amongst those who build traditional log cabins.
Though not quite as ancient as the tools mentioned earlier, the chainsaw is a very popular tool that has a variety of uses. Chainsaws can be used to cut, round and notch logs. If you bring a chainsaw along for the ride, you'll get the job done that much quicker.
Drawknife
Originating in the 1950s, drawknives have a flat chisel-shaped blade that is held together by two wooden handles. The primary function of a drawknife is to peel and debark logs. Though it was designed with this purpose in mind, an adze is still arguably the better tool to perform that particular job. Using a drawknife is relatively simple. Straddle the log you wish to debark, grip both handles of the drawknife, and pull the blade along the wood towards you. As a result, you'll begin shaving away the bark.
Log Dog
Unless you're familiar with the industry, you're probably not aware of what a log dog is. This is a very specialised iron tool that's used to hold logs in place while they're being notched. This tool is highly recommended to ensure that the hewing of your logs are done quickly and efficiently.
Owning a log cabin
If you're interested in owning a log cabin, there are several options to consider.
Log cabin kits
If you're interested in building a log cabin, a log cabin kit may be the way to go. Log cabin kits include all of the material you need to construct a fully functional log cabin. Keep in mind there are many variables to consider such as log wall systems, log types, and lumber choice. Each of these factors can affect the price of the log cabin kit and may confuse someone who has never purchased a log cabin. The primary advantage of a log cabin kit is that the building process has been immensely simplified. Even if you run into issues during construction most log cabin kits have customer service lines that will offer guidance. Furthermore, you only need few tools of tools (i.e. a hammer, a power drill and a ladder) to get the job done.
Hire an architect to design your log cabin
If you're the type who wants an elaborate log cabin, but you have no idea how to make the ideas in your head come to life, you'll want to hire an architect. There are plenty of architects out there, but not all of them specialise or even have the experience needed to construct a log cabin. Do your homework and find an architect who has a great reputation in the industry. Ideally, the architect should also belong to a Log Building Association.
Hire a builder to build a log cabin for you
Who said you had to build the log cabin yourself? Hire an experienced contractor to do it for you. This will likely be the most expensive option for obvious reasons, but if you have the cash the investment will be well worth the expense. The benefits of hiring a contractor are numerous. Perhaps you don't have the skill set to build a log cabin yourself or perhaps you don't trust your ability to safely take on a project of a such a large scope. Whatever the case, that burden will be lifted by hiring a contractor. Another benefit of hiring a contractor is that you can rely upon years of accumulated experience. If something were to go wrong, who would you want to fix the issue? You, or a contractor who knows exactly what they're doing? If you're interested in building or owning a log cabin, know there are many options available to you. If you're on the fence about making a purchase, you should try one of the many log cabin vacation sites in the U.K. That way you can try out log cabin living before making a purchase decision.


KongresKompagniet has made preliminary hotel reservations for the delegates. Reservations can be made on a on-line accommodation form. Please go to Kongreskompagniet and book a hotel online.
The organisers cannot guarantee accommodation for participants who have not registrered in advance. To obtain the stated conference price all reservations must be made through the conference secretariat KongresKompagniet.
The hotels will be booked on first-come first-serve basis. Payment directly to hotel upon departure.
A receipt and a confirmation of accommodation will be sent once the registration form have been received.
Participants changing accommodation must do so through the conference secretariat jaoo@kongreskompagniet.dk and not by contacting the hotels directly.
Cancellation policy: cancellation of accommodation can be made without penalties no later than 3 days before arrival.
Cancellation of accommodation made after this date is subject to a cancellation fee equal to 100% of the room rate for the first night. No-show is subject to a cancellation fee equal to 100% of accommodation for the whole period of stay.