, but this code // executes before the first paint, when

ƴɸ̳

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Building robots and community - News & Stories | ƴɸ̳

ƴɸ̳

Skip to main content

Calvin News

Building robots and community

Fri, Dec 16, 2022
Matt Kucinski

“Fight. Fight. Fight,” chant students and other onlookers.

It’s a Tuesday night in early December at ƴɸ̳. And dozens of students and faculty gather around a ring setup in a building on campus. Others look on from a balcony above.

“OH,” screams a student excitedly, after witnessing a crushing blow.

Another covers his mouth in astonishment.

“We’re done, we’re done,” yells one of the participants as he conceded.

“It was exciting. Lots of people showed up, and there was awesome destruction from the fights,” said Luke Jensen.

Jensen, a junior majoring in electrical engineering, was one of the co-organizers of the first-ever Calvin Combat Robotics Tournament. He also served as the host.

Opening doors

Jensen, along with fellow electrical engineering major Jacob Vanden Bosch, started the Calvin Combat Robotics club this past spring. The two juniors had just finished their first season handling the electrical components on the Calvin Robotic Football team (which won a tournament this past year against the likes of Navy, Notre Dame, and Valparaiso). Realizing there wasn’t much electrical work needed for the team in the offseason, they started dreaming up more robotics possibilities.

Unlike the Robotics Football team, which requires more advanced robotics skills, the two decided to design an experience that would open the doors to robotics to more people.

“We wanted to provide stepping stones for those interested in perhaps pursuing more advanced robotics,” said Jensen.

For Vanden Bosch, he had been doing robotics since fifth grade and was a big fan of the TV show: BattleBots. So, when it came to designing this club, he felt modeling it off that idea would be ideal. “Everyone knows what it is, how it works, and everyone can have their own robot and feel invested in it,” said Vanden Bosch.

Through engineering professor Randall Brouwer, Vanden Bosch and Jensen got connected with the Institute of Electrical and Electronic Engineers (IEEE) and successfully applied for a grant. That grant allows for students to get started free of charge with the base components for their robots as well as to have access to print on the 3-D printers. Vanden Bosch and Jensen also offer their advice and expertise with regular “office hours” in the engineering building.

Creating community

“Students who are coming out of robotics programs in high school who are looking to continue to do robotics in college find this quite appealing,” said Jensen. “As a first-year student you can create your own small team, you and a friend or two, you don’t have to necessarily join a team and be assigned something with people you don’t know.”

While it’s clear from the first Combat Robotics competition that there’s a competitive spirit and with $120 going to the winner there was something on the line, what became clearer is the tight community that is formed through Calvin Combat Robotics.

“During the competition there was a robot that was having issues with one of their components. A couple of the other teams came in and offered a piece from their own robot to give to the team who needed it. It was cool to have that collaborative atmosphere,” said Vanden Bosch.

Students interested in joining the Calvin Combat Robotics community can get started by showing up to a meeting on any Friday evening at 7 p.m. in the Engineering Building, or following their Instagram .


Authors: