Posts

Showing posts from 2019

Tracking Local Airplanes with an SDR and dump1090

Image
Hi, I spent the last day or so collecting data and visualizing it with Mathematica. The data was collected using a nooelec SDR and the open source software dump1090. I had initially thought this wasn't possible because this particular model of SDR has a dead spot near 1090 MHz where the signal is received. Nonetheless, the SDR is capable of receiving aircraft transponder data when fitted with a pcb digital antenna. Since San Diego is home to several airports I expected a lot of commercial air traffic, however to my surprise I was able to receive signals all the way up from Palm Springs. Over the course of the collection period I accumulated ~139 MB of data. Before we get to how I visualized the results lets look at the software and methods utilized to collect the data: dump1090 can be found here: https://github.com/antirez/dump1090 by executing $ ./dump1090 --aggressive --interactive --net --net-http-port 10900 --net-sbs-port 30003 we start a server that gives

RTL-SDR NOAA Satelite Update

Image
So the last time I wrote about my adventures into the world of software defined radio satellite reception I was dealing with some local FM radio stations really messing with my radio's ability to get a clear sat signal. This proved to be a difficult challenge to overcome as the same interference would be present, and sometimes stronger even if I went to the roof of a building to take the measurement. Nevertheless I got some nice images which are in prior posts. One of the advantages of software defined radio is that the data is read through a computer and so the radio can be made easily accessible by connecting it to a server. Many hobbyists have set up publicly accessible radios by doing this and some of them are very good resources for those living in areas with poor reception or lots of interference. You can find many of these at http://websdr.org . One radio in particular, http://k3fef.com:8902/  is equipped with a quadrifilar helicoidal antenna much like my own and is sc

Fitting TOCSY (2D 1H NMR) Data with Mathematica

Image
So this isn't so much "fitting" as it is programming in known data points and then making a function that easily allows one to switch between different inputs until one that is close enough is identified visually. It could be substantially improved by adding peak detection and error calculations. For one of my classes, Ch 007, my lab partner and I used solid phase synthesis techniques to make a pentapeptide incorporating four known peptides (one of which is non canonical) and an unknown mystery peptide in a known order. Solid phase techniques are generally known for their extremely high yields. Given that it was my first go at the technique I think I might have played a key role in obtaining a much lower than expected yield. Nevertheless, the product was purified by prep HPLC and the result was rather pure in the 1H NMR spectrum. We obtained a TOCSY 2D spectrum and are now tasked with interpreting the TOCSY spectrum as well as ESI-MS and MALDI-MS to verify the structur

Modelling a Magnetic Cube: Dipoles!

Image
So I found this paper    https://doi.org/10.1063/1.4941750  (It's open access by the way) and in it they have a nice equation for the energy between two magnetic dipoles. $$E_{m_{1}m_{2}} = \frac{1}{4\pi\mu}\frac{m_{1}m_{2}-3(m_{1}e_{r})(m_{2}e_{r})}{|l^{3}|}$$ In it, the terms m1 and m2 describe the dipole vector of each magnet, and er describes the normal vector between the centers of each dipole, l describes the distance between the two dipoles, and mu is the permeability of the medium. For our purposes I got rid of mu because it's just a scaling factor. With dipoles the determination of the energy becomes a little more complicated because I've got to permute through all the possible orientations of the magnets in order to find the best choice for moving to a lower energy. This is simplified greatly by the fact that the magnets in this case are cubes and so can only have six possible orientations. In the code I've described this with an integer (1 to 6

Modelling a Magnetic Cube: Optimizing an 8x8 grid of Monopoles

Image
I was quite excited by the result obtained in the previous post from this series. However after acheiving it I realized that although I could propose a configuration and illustrate its energy distribution it was pretty much useless for finding what the minimum energy configuration of an arbitrary arrangement of positions each containing a monopole is. In order to find the energetic minimum, one could in theory simply characterize the entire state space of a configuration. Since there are two possible monopoles that can occupy a position the size of the state space is 2^N for N positions. Obviously for an 8x8x8 cube that is 13,407,807,929,942,597,099,574,024,998,205,846,127,479,365,820,592,393,377,723,561,443,721,764,030,073,546,976,801,874,298,166,903,427,690,031,858,186,486,050,853,753,882,811,946,569,946,433,649,006,084,096 possible configurations. I don't think I have the resources to characterize the whole state space so we need a more efficient way of finding the energetic m

Modelling a Magnetic Cube: Monopoles

Image
I took an interesting course this past term on biochemical computation. It's taught by Erik Winfree who was one of the first to identify that DNA strands can be used to model computation. On one of the homework assignments it was announced that the best solution would get a prize at the end of the term. Although I did not get first play, my solution was "within epsilon of winning" and so I too got a first place prize. The prize was an 8x8x8 cube of small cubes of neodymium cubic magnets. The cube was all well and good before I began dissassembling it but when the task of reassembling the cube came up I realized that although it was tauted as a "self assembling" cube, actually getting it to its most stable configuration is quite challenging. The easiest way of doing it is to make a one dimensional chain of cubes and then fold it into an 8x64 rectangle with the poles oriented parallell with the short side, then folding this rectangle into a cube. I can see why th